@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
/* Reset Style
 * --------------------------------------- */

/* #### Generated By: http://www.cufonfonts.com #### */

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
    font-family: Arial, Helvetica, 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;

}

/* Base Style
* --------------------------------------- */

#container a:link {
    color: #0000ff;
    text-decoration: none;
}

#container a:visited {
    color: #0000ff;
    text-decoration: none;
}

#container a:hover {
    /*opacity: .8;*/
    text-decoration: none;
}

#container a:active {
    /*opacity: .8;*/
    text-decoration: none;
}

.linktxt:before {
    content: url(/stemfit/img/arrow_red.png);
    vertical-align: baseline;
    display: inline-flex;
    padding: 0 .2em;
    align-items: center;
}

ul,
li {
    list-style: none;
}

p {
    line-height: 1.5;
}

img {
    display: block;
}

a img {
    border-width: 0;
    transition: all .3s ease-in-out;
}

a img:hover {
    opacity: 0.7;
}


.sp {
    display: none !important;
}

span.txt-sub,figure.txt-sub {
    font-size: 60%;
    vertical-align: bottom;
    position: relative;
    bottom: -0.3em;
}

span.txt-sup,figure.txt-sup {
    font-size: 30% !important;
    vertical-align: top;
    position: relative;
}

.lead span.txt-sup, 
.btnbox-flex span.txt-sup {
    font-size: 50% !important;
    top:-0.4rem;
}


.annotation {
    font-size: 85%;
}

.annotation-s {
    font-size: 70%;
}

.orange {
    color: #FF4D04;
}

.blue {
    color: #2066AC;
}

figure{
    display: inline;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
}




.outer a[href$=".pdf"]:after {
    content: " ";
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left: 0.3rem;
    background: url(/products/bio/stemfit_purotein/img/pdf-icon.png) no-repeat;
    background-size: contain;
    vertical-align: -3px;
}

a[target="_blank"]:after {
    content: " ";
    display: inline-block;
    width: 19px;
    height: 19px;
    margin-left: 0.3rem;
    background: url(/products/bio/stemfit/img/web-icon.png) no-repeat right center;
    background-size: contain;
}

#footer a[target="_blank"]:after {
    content: " ";
    display: none;
    width: 0;
    height: 0;
    margin-left: 0;
    background: none;
    background-size: contain;
}


.pgtop {
    position: absolute;
    right: 0;
    top: -39px;
}

.pgtop.txtR {
    position: relative;
    right: 0;
    top: 0px;
    margin: 20px 0;
}

.pgtop.txtR img {
    display: inline-block;
    vertical-align: middle;
    padding-right: .2em;
}

#topic_path {
    margin-bottom: 0;
}

#container .pgtop.txtR a,
#container .pgtop.txtR a:link,
#container .pgtop.txtR a:visited,
#container .pgtop.txtR a:active,
#container .pgtop.txtR a:hover {
    font-size: .875rem;
    color: #323232;
    text-decoration: none;
}

#contents-wrap {
    width: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    margin-top: 0;
}

#contents-wrap.bgimg-stemfit {
    background-image: url(/products/bio/stemfit/img/back@2x.jpg);
 
}

#contents-wrap.bgimg-purotein {
    background-image: url(/products/bio/stemfit_purotein/img/back@2x.jpg);
}



/*
 * container container container
 */

#container {
    color: #323232;
}

#mv {
    width: 100%;
}

#mv>img {
    width: 100%;
}


#container .col {
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 15px;
}

#container .col .inner {
    margin: 0 auto;
    max-width: 960px;
}



#container h2.ttl {
    display: block;
    font-size: 5rem;
    padding: 0 0 1rem 0.4375em;
    position: relative;
}

#container .banner1 h2.ttl,
#container .banner2 h2.ttl {
    font-size: 3.25rem;
    padding: 0 0 2rem 0;
}

#container .banner1 h2.ttl {
    margin-left: 1.8em;
}

#container .banner1 h2.ttl span.small {
    display: block;
    font-size: 2.125rem;
    padding: 0.22em 0;
}

#container .banner2 h2.ttl {
    margin: 0 0.92em 6.5px 0;
}

#container .banner2 .heading {
    justify-content: flex-end;
}

#container .col1 h2.ttl {
    border-left: #fa5419 solid 13px;
    margin: 0 auto 176px 30px;
}

#container h2.ttl span.small,
#container h2.ttl_s2 span.small {
    font-size: 3.75rem;
}

#container h2.ttl span.sub {
    display: block;
    font-size: 1.875rem;
    font-style: italic;
    padding: 0.25em 0 0.5em;
}

#container .heading a.linktxt {
    font-size: 1rem;
    font-weight: normal;
    position: absolute;
}

#container .banner1 .heading a.linktxt,
#container .banner2 .heading a.linktxt {
    bottom: 0;
    left: 0;
}

#container .products {
    padding: 62px 0 0;
}

#container h2.ttl_s,
#container h2.ttl_s2 {
    display: block;
    font-size: 2.75rem;
    font-weight: bold;
    line-height: 1.18;
    padding: 1.36em 0;
    text-align: center;
}

#container h2.ttl_s {
    display: block;
}

#container h2.ttl_s2 {
    display: inline-block;
    width: 100%;
}


#container h2.ttl_s span,
#container h2.ttl_s2 span {
    font-weight: 400;
}

#container h2.ttl_s span.txt-sub,
#container h2.ttl_s2 span.txt-sub {
    bottom: 0.1rem;
    padding-left: 2px;
}

#container h2.ttl_s span.read,
#container h2.ttl_s2 span.read {
    line-height: 2rem;
}

#container .products h3.ttl_l {
    display: block;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 2.5rem;
    font-weight: bold;
    padding: 0 0 1em;
    text-align: center;
}

#container .products .inner {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#container .products .inner.narrow {
    max-width: 576px;
}

#container .products .inner a {
    color: #323232;
    align-items: center;
    display: inline-flex;
    justify-content: center;
    padding: 0 30px;
    position: relative;
}

#container .products .inner a p.name {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.375rem;
    left: 0;
    line-height: 1.13;
    position: absolute;
    text-align: center;
    top: 13em;
    width: 100%;
}

#container .col2 {
    background-image: url(../img/bg2.jpg);
    padding: 141px 0 160px;
}

#container .col2 h2.ttl {
    border-left: #d3337a solid 13px;
    margin: 0 30px 0 auto;
}

#container .col2 h2.ttl span.small {
    display: block;
}

#container .col3 {
    background-image: url(../img/bg3.jpg);
    padding: 141px 0 160px;
}

#container .col3 h2.ttl {
    border-left: #0069ab solid 13px;
    margin: 0 auto 0 30px;
}

#container .col4 {
    background-image: url(../img/bg4.jpg);
    padding: 190px 0 0;
}

#container .col4 .products .inner {
    max-width: 668px;
    padding-bottom: 95px;
}

#container .col4 .products .inner div {
    text-align: center;
}

#container .col4 .products .inner div a {
    padding: 0;
    vertical-align: top;
}

#container .col4 .products .inner div:first-of-type a:not(:last-of-type) {
    margin-right: 50px;
}

#container .col4 .products .inner div:last-of-type img {
    margin: 0 auto;
}

#container .col4 h2.ttl {
    border-left: #f41b00 solid 13px;
    margin: 0 15px 176px auto;
}

#container .col4 h2.ttl img {
    box-sizing: border-box;
    margin-bottom: 15px;
    padding-right: 5%;
}

#container .col4 h2.ttl span.small {
    display: block;
}

#container .col5 {
    background-image: url(../img/bg5.jpg);
    padding: 106px 0;
}

#container .col5 h2.ttl {
    font-size: 2.375rem;
    padding: 0 0 0 30px;
}

#container .col5 h2.ttl img.logo {
    margin: 10px 0 23px;
}

#container .col5 h2.ttl a {
    display: inline-block;
}

#sns {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 100px;
    max-width: 137px;
}

sup {
    font-size: 64%;
    vertical-align: top;
}

sub {
    font-size: 64%;
    vertical-align: bottom;
}

#container h4.ssttl {
    font-size: 1.25rem;
    text-align: left;
}

#container h4.ssttl:before {
    content: "■";
    color: #ff0000;
    display: inline-block;
    padding-right: .2em;
}

dl.archives_list {
    display: block;
    padding: 15px 3%;
    margin-bottom: 25px;
}

dl.archives_list:last-child {
    margin-bottom: 0;
}

dl.archives_list dt {
    font-size: 1.375rem;
    display: block;
    border-bottom: 1px #959395 dotted;
}

dl.archives_list dd {
    box-sizing: border-box;
    display: table;
    border-bottom: 1px #959395 dotted;
    padding: .5em .8em;
    width: 100%;
}

dl.archives_list dd:first-child {
    border-top: 1px #959395 dotted;
}

dl.archives_list dd span {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
}

dl.archives_list dd span.date {
    width: 8em;
}

dl.archives_list dd span.tabtxt {
    width: 9em;
}

/* mv-pic */
.mv-round {
    color: white;
    width: 60%;
    padding: 0.3rem 0.3rem 0.3rem 0.3rem;
    margin: 0 0 20px 20%;
    border-radius: 20px 20px 20px 20px;
    font-size: 1rem;
    text-align: center;
}

.bg-blue {
    background-color: #2066AC;
}

.bg-orange {
    background-color: #EB4200;
}

.mv-round.single {
    width: 30%;
    margin-left: 35%;
}

.mv-title {
    width: 60%;
    margin: 0 0 50px 20%;
    font-size: 1.2rem;
    text-align: center;
    font-weight: bold;
}

.mv-title sub {
    font-size: 70%;
    vertical-align: bottom;
    position: relative;
    bottom: -0.1em;
}

.mv-title span.frame {
    border: #EB4200 1px solid;
    color: #EB4200;
    font-size: 0.8rem;
    padding: 0.1rem 0.2rem;
    margin-left: 5px;
    text-align: center;
    vertical-align: 3.5px;
}


/* /mv-pic*/

/* mv-future */
.w600 {
width: 600px;
text-align: center;
margin-left: 185px;
}

.main-future {
    background-color: white;
    background-image: url(/products/bio/stemfit_purotein/img/mv-future.png);
    background-size: contain;
    width: 210px;
    height: 210px;
    margin-bottom: 20px;
    border-radius: 100px 100px 100px 100px;
    box-shadow: 0 5px 15px 0 rgba(0, 0, 0, .5);
    font-size: 1.1rem;
    line-height: 1.9rem;
    text-align: center;
    position: relative;
}

.main-future-l {
    width: 260px;
    height: 260px;
    border-radius: 130px 130px 130px 130px;
    font-size: 1.3rem;
    line-height: 1.95rem;
    text-align: center;
    position: relative;
}

.main-future div,
.main-future-l div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.main-future-l div {
    padding-top: 10px;
}

/* /mv-future */

.colbox {
    display: block;
    padding: 15px 3%;
    position: relative;
}

.colbox.full {
    padding: 15px 0;
}

.scrollbox {
    height: 300px;
    overflow-y: scroll;
}

.scrollbox::-webkit-scrollbar {
    width: 10px;
}

.scrollbox::-webkit-scrollbar-track {
    border-radius: 10px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}

.scrollbox::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 50, .2);
    border-radius: 10px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .3);
}



ol.numlist {
    display: block;
}

ol.numlist li {
    display: block;
    margin-bottom: .8em;
}

ol.numlist li em {
    display: block;
    font-style: italic;
    font-weight: bold;
    text-indent: -1.2em;
    font-size: 1.25rem;
}


table.product-info {
    width: 100%;
    margin-bottom: 40px;
}

table.product-info th,
table.product-info td {
    border-bottom: 1px #c3c2c0 solid;
    padding: .6em 1em;
    text-align: center;
    color: #323232;
    font-size: 1.25rem;
    position: relative;
}

table.product-info th {
    background-color: #ebebea;
}

table.product-info td.basic02 {
    background-color: #f6e1f1;
    color: #b6008d;
}

table.product-info td.basic03 {
    background-color: #fcebe4;
    color: #eb6620;
}

table.product-info td.txt_02 {
    color: #b6008d;
}

table.product-info td.txt_03 {
    color: #eb6620;
}

table.product-info td span {
    display: block;
    margin: 0 auto;
    width: 2rem;
    height: 2rem;
    line-height: 2rem;
    border-radius: 50%;
}

/*table.product-info td.basic02 span { border:3px #b6008d solid; }
table.product-info td.basic03 span { border:3px #eb6620 solid; }*/

table.product-info td p {
    position: absolute;
    color: #323232;
    right: 3.5%;
    top: 28%;
    font-size: .9375rem !important;
}

.col2box {
    display: table;
    width: 100%;
    margin-bottom: 40px;
}

.col2box span {
    display: table-cell;
    padding-right: 3.75%;
    text-align: center;
}

.col2box span:nth-child(2n) {
    padding-right: 0;
}

.col2box span img.ph {
    display: block;
    margin-bottom: 20px;
}

.col2box span h3 {
    margin-bottom: 10px;
}

.col2box span p {
    line-height: 1.3 !important;
}



.btn {
    background-color: #FF7500;
    width: 50%;
    margin-left: 25%;
    padding: 15px 20px;
    text-align: center;
    font-size: 1.1rem;
    line-height: 1.6rem;
    border-radius: 8px;
    transition: all .2s;

}

.flex .btn {
    width: 42%;
    margin-left: 0;
}

.bg-red {
    background-color: #EF232A;
}

.btn a {
    display: block;
    text-decoration: none;
}

.btn a:link,
.btn a:visited {
    color: #FFF !important;
}

.btn:hover {
    opacity: 0.7;
}

.phrightbox {
    display: table;
    width: 100%;
    margin-bottom: 40px;
}

.phrightbox span {
    display: table-cell;
    padding-right: 3.75%;
    vertical-align: bottom;
}

.phrightbox span:nth-child(2n) {
    padding-right: 0;
}

table.linetd {
    background-color: #fff;
    border-top: 1px #b4b4b4 solid;
    border-left: 1px #b4b4b4 solid;
    width: 100%;
    margin: 0 auto 60px;
}

.basic02 table.linetd,
.basic03 table.linetd {
    max-width: 660px;
}

.basic04 table.linetd,
.diff table.linetd,
.msc table.linetd {
    max-width: 566px;
}

table.linetd td {
    border-bottom: 1px #b4b4b4 solid;
    border-right: 1px #b4b4b4 solid;
    padding: 0.75em;
    text-align: center;
    font-size: 0.9375rem;
}

.linebox {
    background-color: #fff;
    display: block;
    border: 1px #646464 solid;
    padding: .3em 1em;
    text-align: center;
    margin: 30px auto;
    line-height: 1.5;
}

.meritbox {
    display: block;
    letter-spacing: -.5em;
    margin: 38px auto 65px;
    padding: 27px 30px 23px;
}

.basic02 .meritbox {
    background-color: #f7edf6;
}

.basic03 .meritbox {
    background-color: #fdf1ec;
}

.basic04 .meritbox {
    background-color: #fcf1e0;
}

.meritbox p.boxttl {
    font-size: 1.375rem;
    font-weight: bold;
    letter-spacing: normal;
    margin-bottom: 1em;
    position: relative;
    text-align: center;
}

.basic02 .meritbox p.boxttl {
    color: #a50081;
}

.basic03 .meritbox p.boxttl {
    color: #ee5029;
}

.basic04 .meritbox p.boxttl {
    color: #e6a000;
}

.meritbox p.boxttl::before {
    padding-right: 10px;
}

.basic02 .meritbox p.boxttl::before {
    content: url(../img/products/basic02/icon.png);
}

.basic03 .meritbox p.boxttl::before {
    content: url(../img/products/basic03/icon.png);
}

.basic04 .meritbox p.boxttl::before {
    content: url(../img/products/basic04/icon.png);
}

.meritbox .boxcol {
    display: inline-block;
    margin-right: 3%;
    letter-spacing: normal;
    width: 48.5%;
    margin-bottom: 10px;
}

.meritbox .boxcol:nth-child(2n+1) {
    margin-right: 0;
}

.meritbox .boxcol .meritinner {
    display: table;
}

.meritbox .boxcol .meritinner div {
    display: table-cell;
    background-color: #fff;
    padding: 0;
    vertical-align: middle;
}

.meritbox .boxcol .meritinner div p {
    font-weight: bold;
    padding: .5em .8em;
}


.mgb20 {
    margin-bottom: 40px;
}

.mgb40 {
    margin-bottom: 40px;
}

.mgtb {
    margin: .5em 0 1em 0;
}

/* */

.feature_list {
    display: block;
    margin-bottom: 60px;
    border-top: 1px #333 dotted;
}

.feature_list li {
    display: block;
    border-bottom: 1px #333 dotted;
    padding: 10px 0;
}

.boxWrp {
    display: block;
    letter-spacing: -.5em;
}

.leftbox,
.rightbox {
    display: inline-block;
    width: 44%;
    letter-spacing: normal;
    vertical-align: top;
}

.leftbox {
    padding: 0 3% 0 0;
    width: 52%;
}


p.leadTxt {
    line-height: 1.5 !important;
}

.num {
    text-indent: -1.2em;
    padding-left: 1.2em;
}

.txtS,
ul.lsitdot.txtS li {
    font-size: .875rem !important;
    line-height: 1.5 !important;
}

.txtM,
ul.lsitdot.txtM li {
    font-size: 1rem !important;
}

.lineboxPk {
    border: 2px #f0c7e3 solid;
    border-radius: 6px;
    padding: 10px 20px;
}

.imgC {
    display: block;
    width: auto !important;
    margin: 10px auto 20px auto;
    text-align: center;
}

.imgC p {
    display: block;
    text-align: center !important;
}

.phR {
    display: block;
    float: right;
    margin-left: 20px;
}

.grBox {
    border: 2px #c8c8c8 solid;
    padding: 35px;
    position: relative;
    margin-bottom: 35px;
}

.grBox img.ico {
    float: left;
    margin-right: 0px;
}

.boxinner {
    width: 80%;
    float: left;
    padding-left: 0px;
}

.boxinner h4.sttl {
    padding-left: 20px;
}

.txtR {
    text-align: right !important;
}


ul.col3list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

ul.col3list li {
    margin-bottom: 39px;
    width: 33%;
}

ul.linklist li {
    display: block;
    width: 100% !important;
    line-height: 2em;
}

ul.linklist li a:link,
ul.linklist li a:visited {
    color: #0000ff;
    text-decoration: underline
}

ul.linklist li a:active,
ul.linklist li a:hover {
    color: #0066ff;
    text-decoration: none;
}

ul.linklist li p.sub {
    padding-left: 2em;
    font-size: .8125rem !important;
    margin-bottom: 1em;
}

.btnPDF {
    display: block;
}

.btnPDF a {
    display: block;
    width: 16em;
    padding: .8em 2em .6em 1.6em;
    color: #fff;
    background-color: #b6349b;
    text-align: center;
    margin: 10px auto;
    font-size: 1rem;
}

.btnPDF img {
    display: inline-block;
    margin-right: 1em;
    vertical-align: middle;
}

.btnPDF a:link,
.btnPDF a:visited,
.btnPDF a:hover,
.btnPDF a:active {
    color: #fff;
    text-decoration: none;
}

.contctbox {
    display: block;
    background-color: #fdf1f5;
    text-align: center;
    font-size: 1rem;
}

.contctbox .inner {
    margin: 0 auto;
    max-width: 900px;
    padding: 62px 0 30px;
    position: relative;
}

.contctbox p.contactlead {
    font-size: 1.375rem;
    margin-bottom: 0.5em;
}

.contctbox p.mail {
    display: inline-block;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.contctbox p.mail a {
    display: block;
    background-attachment: scroll;
    background-image: url(/stemfit/img/icon_mail_blk.png);
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 55px;
    font-size: 1.75rem;
    color: #323232;
    word-break: break-all;
}

.contctbox address {
    display: block;
    font-size: 1rem;
    font-style: normal;
    line-height: 1.4;
    border-top: 1px #000 solid;
    padding: .5em 1em;
    max-width: 500px;
    margin: 0 auto;
}

.contctbox p.mail a:link,
.contctbox p.mail a:visited,
.contctbox p.mail a:hover,
.contctbox p.mail a:active {
    color: #323232;
    text-decoration: none;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

* html .clearfix {
    height: 1px;
    /*¥*/
    /*/
	height: auto;
	overflow: hidden;
	/**/
}

.both {
    clear: both;
}

.inline_block {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

/*
 * 変更 20190422
 */


.mgb3rem {
    margin-bottom: 3rem;
}

.col3box {
    display: table;
    width: 100%;
    margin-bottom: 24px;
}

.col3box span {
    display: table-cell;
    padding-right: calc((960px - (290px*3))/2);
    text-align: center;
}

.col3box span:nth-child(3n) {
    padding-right: 0;
}

.col3box span img.ph {
    display: block;
    margin-bottom: 20px;
}

.col3box span h3 {
    margin-bottom: 10px;
}

.col3box span p {
    line-height: 1.3 !important;
}

strong {
    font-size: inherit;
}

.basic04 .dl_box {
    border: 2px #e6a000 solid;
}

.basic04 .dl_box dt {
    background-color: #e6a000;
}

.basic04 .dl_box dt:after {
    color: #e6a000;
}

.mainBlock.growthfactors {
    background-image: url(/stemfit/img/products/growthfactor/pgttl.jpg);
}

.mainBlock.growthfactors h1 img {
    display: block;
    position: absolute;
    top: 80px;
    left: 0;
    z-index: 1;
}

.col2box_2 {
    display: table;
    width: 100%;
    padding-bottom: 0px;
}

.col2box_2 span {
    display: table-cell;
    width: 50%;
    vertical-align: top;
}

.col2box_2 .blmbox {
    display: block;
    width: 92%;
    position: relative;
    background-color: #ffebeb;
    text-align: center;
    padding: 5%;
}




.growthfactors .dl_box {
    border: 2px #e60012 solid;
}

.growthfactors .dl_box dt {
    background-color: #e60012;
}

.growthfactors .dl_box dt:after {
    color: #e60012;
}

#container h3.mgb0 {
    margin-bottom: 0;
}

.txt-italic {
    font-style: italic;
    font-size: inherit;
}

ul.dotlist {
    width: 100%;
    margin-bottom: 70px;
    border: 2px #fef1de solid;
    background-color: #fffbf3;
    padding: 1.5em 4.2em;
}

ul.dotlist li:before {
    display: inline-block;
    content: "●";
    color: #f23232;
    font-size: 1.2em;
    margin-left: -1.2em;
    padding-right: .2em;
    line-height: 2.3rem;
}

ul.dotlist li {
    font-size: 1.375rem;
}



.growthfactors .capbox {
    text-align: right;
    margin-bottom: 50px;
}

#container p.cap {
    font-size: .9375rem;
    line-height: 1.3;
    padding-bottom: .8em;
}

#container p.cap small {
    font-size: 0.75rem;
}

#container p.cap2 {
    font-size: .9375rem;
    line-height: 1.5em;
    padding-bottom: 0em;
    display: inline-block;
    text-align: left;
}

#container h3.ttllink {
    padding: 0.25em 0 0.25em 1em;
    text-indent: -0.5em;
}

#container h3.ttllink a {
    margin-bottom: .3em;
    font-weight: bold;
    font-size: 1.25rem;
    line-height: 1.5;
    display: inline;
}

#container h3.sttl {
    display: block;
    margin-bottom: .3em;
    color: #ff3c2f;
    font-weight: bold;
    font-size: 1.25rem;
}

#container h3.sttl:before {
    content: "■";
    display: inline-block;
    padding-right: .3em;
}

/*#distributors*/

#distributors ul.linklist li {
    margin: 1em 0;
}

.inner .column .colbox {
    margin: 0 auto;
    max-width: 900px;
    padding: 0;
}

.outer {
    margin: 0 auto;
    max-width: 960px;
    position: relative;
}

.txt20 {
    font-size: 1.25rem;
}

#technicalsupport .inner {
    margin: 70px auto 14px;
}

#technicalsupport .colbox {
    padding-bottom: 65px;
}

.bg_gray {
    background-color: #ededed;
}

.bg_orange {
    background-color: #fff6ed;
}

.bg_white {
    background-color: #fff;
}

a.pagetop_txt {
    background-image: url(../img/pgtop_arrow.png);
    background-position: left center;
    background-repeat: no-repeat;
    color: #323232 !important;
    font-size: 0.875rem;
    padding-left: 1.5em;
    position: absolute;
    right: 0;
    text-decoration: none !important;
    top: 2em;
    z-index: 1;
}

.bnrbox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 920px;
}

.bnrbox img.pc {
    margin-bottom: 21px;
}



h3.ttl {
    font-size: 1.65rem !important;
    font-weight: 400;
    letter-spacing: 0.1rem;
    margin-bottom: 1em;
    text-align: center;
}

.dl_box p {
    font-size: 1.125rem !important;
    margin-bottom: 0 !important;
}

.bg_color {
    margin: 0 auto;
}

#news .bg_color {
    /*background-color: #fdf1ec;*/
    background-color: #f3f3f3;
}

#news h3 {
    font-size: 1.9375rem;
    text-align: center;
}

.inner.margintop {
    margin-top: 70px;
}

.inner.marginbottom {
    margin-bottom: 100px;
}

.inner.marginbottom12 {
    margin-bottom: 12px;
}

.column.paddingtop {
    padding-top: 100px;
}

.column.paddingbottom {
    padding-bottom: 100px;
}

.column.marginbottom {
    margin-bottom: 100px;
}

.column .colbox.padding {
    padding-bottom: 60px;
}

#container #aboutus h2.ttl_s {
    padding: 1em 0;
}

#aboutus .column .colbox p,
.ak .column .colbox p {
    margin-bottom: 1em;
}

.ak .column .colbox p:last-child {
    margin-bottom: 0;
}

.img_area {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.img_area .img_box img {
    margin: 13px auto 18px;
}

#aboutus .column .colbox p.cap {
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
}

.txt_box {
    border: #ff0000 solid 1px;
    box-sizing: border-box;
    font-size: 1rem;
    padding: 2em;
}

.red {
    color: #ff0000;
}

p.ttl {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.625rem;
    font-weight: bold;
}

.txt_box ul li {
    line-height: 1.5;
    margin-bottom: 1em;
}

.txt_box ul li span {
    display: block;
    font-size: 1.125rem;
    font-weight: bold;
}

a.pagetop_txt.top {
    top: -1em;
}

a.pagetop_txt.bottom {
    bottom: 0;
    top: auto;
}

.linkbtnbox li a.linktxt {
    background-image: none;
}

.linkbtnbox li a.linktxt::before {
    margin-top: -4px;
}

#aboutus ol li {
    font-size: 0.875rem;
    line-height: 1.4;
}

#aboutus ol li ol li {
    line-height: 2.1;
}

#aboutus table {
    border-top: #ababab solid 1px;
    font-size: 1.125rem;
    line-height: 3;
    text-align: left;
    width: 100%;
}

#aboutus table tr {
    border-bottom: #ababab solid 1px;
}

#aboutus table th {
    padding-left: 2em;
}

.map {
    height: 0;
    margin-bottom: 50px;
    overflow: hidden;
    padding-bottom: 56.33%;
    position: relative;
}

.map:last-child {
    margin-bottom: 0;
}

.map iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

p.txtcap {
    font-size: 0.875rem;
}

ul.indent li {
    margin-bottom: 0;
    padding-left: 1em;
    text-indent: -1em;
}

.txt_box.flex {
    align-items: center;
    display: flex;
    padding: 1em;
}

.txt_box.flex .txt_area {
    margin-left: 1em;
}

.txt_center {
    text-align: center;
}

.txt18 {
    font-size: 1.125rem !important;
}

.nomargin {
    margin: 0 !important;
}

#container #products h2.ttl_s,
#container #products h2.ttl_s2 {
    padding: 1.34em 0 0.84em;
}

#container #products h2.ttl_s span {
    display: block;
    font-size: 1.75rem;
}

#container #products h2.ttl_s2 span {
    font-size: 1.75rem;
}

#container #products h2.ttl_s span.sub,
#container #products h2.ttl_s2 span.sub {
    font-size: 1.5rem;
    line-height: 2.5rem;
}

#container #products h2.ttl_s2 span.frame {
    border: #000 1px solid;
    font-size: 1rem;
    width: 100px;
    padding: 0.2rem;
    margin-right: 8px;
    margin-top: 30px;
    height: 1rem;
    line-height: 5rem;
    text-align: center;
    vertical-align: 4px;
}

#container #products .sub-products h2.ttl_s2 {
    padding: 0.5em 0 0.5em;
}

.prod {
    margin-bottom: 32px;
}

.products_top .prod,
.growthfactor .prod {
    text-align: center;
}

.prod.two {
    max-width: 384px;
}

.prod img {
    margin-bottom: 20px;
}

.prod a,
.prod>span {
    color: #323232 !important;
    display: inline-flex;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.625rem;
    font-weight: bold;
    margin-bottom: 0.75em;
    text-decoration: none !important;
}

.prod a.linkimg {
    display: block;
}

.prod .linktxt:before {
    align-items: baseline;
    margin-top: -4px;
}

.prod p {
    font-size: 0.9375rem;
}

.prod span {
    display: block;
    font-size: 0.9375rem;
    line-height: 1.5;
}

.prod span small {
    font-size: 0.75rem;
}

.outer.margin {
    margin-bottom: 42px;
}

.outer.padding {
    padding-bottom: 60px;
}


.imgbox {
    margin-bottom: 23px;
    padding: 30px;
    text-align: center;
}

.imgbox h3 {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.875rem;
    margin-bottom: 1em;
}

.imgbox img {
    margin: 0 auto;
}

.imgbox p {
    text-align: left;
}

.imgbox img.margin {
    margin-bottom: 29px;
}

.imgbox .flex {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

#container .imgbox p.cap {
    font-size: 0.875rem;
    text-align: center;
}

.imgbox a {
    font-size: 1.125rem;
}

#container .col.bg_orange {
    margin-bottom: 0;
}

#container .col.bg_orange .inner {
    padding-bottom: 75px;
    position: relative;
}

#container .col.bg_orange .inner .pagetop_txt {
    bottom: 3em;
}

#container h3.sttl-basic02,
#container h3.sttl-basic03 {
    display: block;
    margin-bottom: 1em;
    font-weight: bold;
    font-size: 1.875rem;
    text-align: center;
    font-family: 'Roboto Condensed', sans-serif;
}

#container h3.sttl-basic02 em.square_num,
em.square_num {
    color: #a40182;
    font-size: .9375rem;
    font-weight: normal;
    border: 2px #a40182 solid;
    padding: .15em .4em;
    line-height: 1;
    margin-left: .5em;
    font-style: normal;
}

#container h3.sttl-basic02 em {
    display: inline-block;
    transform: translate(0%, -30%);
}

#container h3.sttl-basic03 em.square_num,
.basic03 em.square_num {
    color: #e94620;
    font-size: .9375rem;
    font-weight: normal;
    border: 2px #e94620 solid;
    padding: .15em .4em;
    line-height: 1;
    margin-left: .5em;
    font-style: normal;
}

#container h3.sttl-basic03 em {
    display: inline-block;
    transform: translate(0%, -30%);
}

img.center {
    margin: 0 auto 20px;
}

img.center.margin {
    margin-left: auto;
    margin-right: auto;
}

p.margin {
    margin-bottom: 1em;
}

p.center {
    text-align: center;
}

.btnimg {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#products .dl_bg_color {
    padding: 68px 0;
}

#products .dl_bg_color .dl_box {
    margin: 0 auto;
}

.basic02 .dl_bg_color {
    background-color: #f9f2f9;
}

.basic03 .dl_bg_color {
    background-color: #fef5f2;
}

.basic04 .dl_bg_color {
    background-color: #fcf1e0;
}

#products .dl_box .padding {
    padding-left: 1.25em;
}

.margin100 {
    margin-bottom: 100px;
}

.btnimg.margin40 {
    margin-bottom: 40px;
}

.btnimg.padding {
    padding: 2.45% 0 7.3%;
}

.btnimg a.pdf {
    border: #000 solid 2px;
    box-sizing: border-box;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 6.25%;
    padding: 0.841em 0;
    text-align: center;
    text-decoration: none !important;
    width: 540px;
}

.btnimg a.pdf span {
    color: #323232;
    padding-left: 0.625em;
    position: relative;
}

.btnimg a.pdf span::before {
    background-image: url(/stemfit/img/arrow_red.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    height: 10px;
    left: 0;
    margin-top: -5px;
    position: absolute;
    top: 50%;
    width: 8px;
}

.withcap {
    margin: 0 auto 60px;
    text-align: center;
}

.withcap table.linetd {
    margin: 0 auto;
}

.withcap p.cap {
    padding-top: 0.75em;
    padding-bottom: 0 !important;
}

ul.txt li {
    line-height: 1.5;
    padding-left: 1em;
    text-indent: -1em;
}

.ak .column:first-child .bnrbox {
    justify-content: space-around;
}

.ak .linkbtnbox {
    margin: 0 auto -1rem;
}

.ak .bg_color {
    background-color: #fff4f1;
    padding: 40px 0 10px;
}

.diff .bg_color {
    background-color: #fef3f8;
}

.diff .dl_box dt {
    background-color: #e62e8b;
}

.diff .dl_box {
    border: 2px #e62e8b solid;
}

.diff .dl_box dt:after {
    color: #e62e8b;
}

.bnrbox h3 {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.875rem;
    margin-bottom: 0.5em;
    text-align: center;
}

.bnrbox h3 span {
    display: block;
    font-size: 1.25rem;
    line-height: 1.5;
}

.diff .outer .bnrbox {
    margin-bottom: 28px;
}

.diff .bnrbox .prod,
.msc .bnrbox .prod {
    max-width: 420px;
}

.msc .bnrbox .prod {
    display: inline-flex;
    flex-wrap: wrap;
    position: relative;
}

.diff .bnrbox .prod img,
.msc .bnrbox .prod img {
    margin-bottom: 0;
}

.msc .bnrbox .prod img {
    align-self: flex-end;
}

.scroll img {
    margin-bottom: 38px;
}

.msc .scroll:last-child>img {
    margin-bottom: 0;
}

.pad_l {
    padding-left: 5%;
}

img.right {
    margin: 0 0 0 auto;
}

.diff .scroll:last-child img {
    margin-bottom: 0;
}

.msc .bg_color {
    background-color: #f0f6fa;
}

.meritbox img {
    max-width: unset;
}

.msc .meritbox {
    background-color: #fdece5;
}

.msc .meritbox p.boxttl {
    color: #ea5541;
}

.msc .meritbox p.boxttl::before {
    content: url(../img/products/msc/icon.png);
}

.msc .dl_box {
    border: 2px #0069ab solid;
}

.msc .dl_box dt {
    background-color: #0069ab;
}

.msc .dl_box dt:after {
    color: #0069ab;
}

h3.ttl_s {
    color: #0069ab;
    font-size: 1.25rem;
    font-style: italic;
    font-weight: bold;
    line-height: 1.5;
}

h3.ttl_s.indent {
    text-indent: 1rem;
}

.msc ul.indent li {
    font-size: 1.0625rem;
    line-height: 1.3;
    margin-bottom: 0.5em;
}

#container.msc .col .inner {
    max-width: 900px;
}

#container.msc .banner2 .heading a.linktxt {
    left: 50%;
    margin-left: -2.55em;
}

p.intro {
    margin-bottom: 2.9375em;
}

.growthfactor .prod .sub {
    display: inline-block;
}

.growthfactor .prod span {
    display: inline-block;
    font-size: 1.125rem;
}

.prod span.comingsoon {
    /*display: inline-flex;*/
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.625rem;
    font-weight: bold;
    line-height: 1;
}

.prod span.comingsoon small {
    font-size: 0.9375rem;
}

.growthfactor .bnrbox.product::after {
    content: '';
    width: 272px;
}

.growthfactor .bnrbox.product.center {
    justify-content: center;
}

.growthfactor .bnrbox.product.center::after {
    content: none;
}

.growthfactor .prod {
    margin-bottom: 53px;
}

.growthfactor .bg_orange {
    background-color: #fff4f1;
    padding-bottom: 80px;
}


.growthfactor table.wide {
    border-top: #818181 solid 1px;
}

.growthfactor table small {
    font-size: 0.75rem;
}

.growthfactor .flex {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 810px;
}

.growthfactor .flex.center {
    justify-content: center;
    margin-bottom: 11.55%;
    position: relative;
}

.growthfactor .flex.center .pop {
    left: 50%;
    margin-left: 151px;
    position: absolute;
    top: -56px;
}

.btn_cap {
    display: block;
    font-size: 1.25rem;
    font-weight: bold;
    padding: 2em 0 0;
    text-align: center;
}

.btn_cap ul {
    display: inline-block;
}

.btn_cap ul li {
    line-height: 1.5;
    text-align: left;
}

.btn_cap ul li:before {
    color: #ff3c2f;
    content: "■";
    display: inline-block;
    padding-right: .3em;
}

.growthfactor.bfgf h3.ttl:last-of-type {
    margin-bottom: 1.83em;
    padding-top: 1.4em;
}

.growthfactor.acitivin_a h3.ttl {
    margin-bottom: 1.33em;
}

.growthfactor h4 {
    color: #2967bf;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.5625rem;
    margin-bottom: 0.76em;
    text-align: center;
}

.growthfactor h4.orange {
    color: #ff7428;
}

.box_outer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 65px;
}

.box_outer.center {
    justify-content: center;
}

.growthfactor .box_outer {
    margin-bottom: 40px;
}

.box_outer.orange {
    justify-content: center;
    margin-bottom: 65px;
}

.box_outer.box2 {
    width: 630px;
    justify-content: space-between;
    margin-left: 160px;
}

p.box {
    border: #2967bf solid 2px;
    background-color: #FFF;
    box-sizing: border-box;
    font-size: 1.1rem;
    line-height: 1.8rem;
    max-width: 510px;
    margin: 0 auto 65px;
    padding: 1em;
    text-align: center;
    font-weight: 400;
    color: #2967bf;
}

.size-box {
    border-left: #2967bf solid 2px;
    border-right: #2967bf solid 2px;
    box-sizing: border-box;
    font-size: 1.1rem;
    line-height: 1.8rem;
    max-width: 510px;
    margin: 0 auto;
    text-align: center;
    font-weight: 400;
    color: #2967bf;
}

.orange p.box {
    border: #ff7428 solid 2px;
}

.orange .size-box {
    border-left: #ff7428 solid 2px;
    border-right: #ff7428 solid 2px;
    color: #ff7428;
}

.size-box p.inner {
    background-color: #FFF;
    box-sizing: border-box;
    font-size: 1.1rem;
    line-height: 1.8rem;
    max-width: 510px;
    margin: 3px 10px;
    padding: 1em;
    text-align: center;
    font-weight: 400;
}

p.box.small,
.size-box.small {
    margin: 0;
    width: 300px;
}

p.box,
p.size-box.small strong {
    color: #2967bf;
    font-size: 1.2rem;
}

p.box,
p.size-box.small span {
    color: #2967bf;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.5rem;
}

.orange p.box strong,
.orange p.box span {
    color: #ff7428;
}

.growthfactor.acitivin_a .bg_orange {
    margin-bottom: 72px;
}

#container.growthfactor.acitivin_a .bg_orange p.box {
    border: #323232 solid 2px;
}

#container.growthfactor.acitivin_a .bg_orange a:link,
#container.growthfactor.acitivin_a .bg_orange a:visited {
    color: #323232;
    text-decoration: none;
}

.growthfactor h4.tbttl {
    font-size: 1.75rem;
    margin-bottom: 0.7em;
}

table {
    width: 960px;
}

table.wide tr,
table.color tr,
table.color-multi tr {
    border-bottom: #818181 solid 1px;
    line-height: 1.5;
}

table.color-multi-2 tr {
    border-bottom: #818181 solid 2px;
    line-height: 1.5;
}

table.wide tr span.txt-black,
table.color-multi tr span.txt-black,
table.color-multi-2 tr span.txt-black  {
    color: #000;
}

table.wide th {
    font-size: 1.1rem;
    padding: 1.5em 1em 1.5em 30px;
    text-align: left;
    width: 25%;
}

table.wide td {
    font-size: 1.1rem;
    padding: 1.5em 30px 1.5em 1em;
    word-break: break-all;
}

table.wide td.text-normal {
    word-break: normal;
}

.bg_color.bfgf {
    background-color: #fff4f1;
}

.bfgf .dl_box {
    border: 2px #f41b00 solid;
}

.bfgf .dl_box dt {
    background-color: #f41b00;
}

.bfgf .dl_box dt:after {
    color: #f41b00;
}

table.color,
table.color-multi {
    text-align: center;
    font-size: 1rem;
}

table.color-multi-2 {
    text-align: center;
    font-size: 1.1rem;
}

table.color th,
table.color-multi th,
table.color-multi-2 th {
    text-align: center;
}

table.color th,
table.color td,
table.color-multi th,
table.color-multi td,
table.color-multi-2 th,
table.color-multi-2 td {
    font-weight: normal;
    padding: 1em;
    vertical-align: middle;
} 

table.color-multi-2 th {
    border-top:#818181 solid 2px;
    background-color: #e2e0e0;
    font-weight: 500;
} 

table.color-multi-2 th.side {
    background-color: #fde4dd;
} 

table.color-multi-2 td {
    background-color: #FFF;
} 

table.color th,
table.color td {
    width: 20%;
}

table.color tr:first-child,
table.color-multi tr:first-child{
    font-size: 1.1rem;
}

table.color-multi-2 tr:first-child {
    font-size: 1.1rem;
}

table.color tr:nth-child(n+2) th:first-child {
    background-color: #f0f0f0;
}

table.color th:nth-child(2),
table.color td:nth-child(2)
{
    color: #ff0000;
}

table.color.blk th:nth-child(2),
table.color.blk td:nth-child(2) {
    color: #323232;
    font-weight: bold;
}

table.color td:nth-child(2){
    background-color: #fff4f1;
}

.acitivin_a table.color td:nth-child(2) {
    color: inherit;
    font-size: 1.05rem;

}

.acitivin_a table.color td:nth-child(2) span {
    color: #ff0000;
    font-weight: bold;
}

.acitivin_a table.color tr span.txt-black {
    color: #000;
}

table.color .cap {
    margin-top: 0.3rem;
    font-size: 80%;
    font-weight: 300;

}

.color-multi a{
    color: #0000ff;
}


.acitivin_a .table_cap,
.SCF .table_cap,
.KGF .table_cap {
    padding: 1em 0 4.5em;
}

.acitivin_a table small {
    font-size: 0.875rem;
}

.table_cap {
    display: block;
    font-size: 0.8rem;
    padding: 1em 0;
    text-align: right;
}

.table_cap ul {
    display: inline-block;
}

.table_cap ul li {
    line-height: 1.5;
    text-align: left;
    text-indent: -1em;
}

div.center {
    text-align: center;
}

div.center h5 {
    font-size: 1.25rem;
    margin-bottom: 1em;
    line-height: 1.75rem;
}

div.center p.lead {
    margin-bottom: 2em;
    font-size: 1rem;
}

div.center p.lead span {
    font-size: 0.8rem;
}

div.center p.lead span.txt-italic {
    font-size: 1rem;
}

div.center img.center {
    margin: 0 auto 8px;
}

div.center p.red {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 3em;
}

div.center .column {
    background-color: #fff4f1;
    margin-top: 30px;
    margin-left: 20px;
    margin-right: 20px;
    padding: 30px;
}

div.center .column .flex {
    display: flex;
    text-align: left;
}

div.center .column .flex .flex-box {
    margin-right: 30px;
}

div.center .column .flex .flex-box h5 {
    color: #ff0000;
    font-weight: 600;
    font-size: 1.3rem;
    list-style-position: outside;
}

div.center .column ul.list {
    padding: 0;
    width: 500px;
    color: #ff0000;
    padding-left: 30px;
    list-style-type: disc;

}

div.center .column ul.list li {
    width: 45%;
    padding: 2px 10px 2px 0px;
    list-style-type: disc;
    list-style-position: outside;
}

div.center .column ul.list li:nth-child(even) {
    float: left;
}

div.center .column ul.list li:nth-child(odd) {
    float: left;
    clear: left;
}

div.center .column .bold {
    margin-top: 25px;
    font-size: 1.05rem;
}




div.center p.imgttl {
    font-weight: bold;
    margin: 1.75em 0 1.1875em;
}

div.center p.red:last-of-type {
    margin-top: 1.72em;
}

.dl_box dd p.block,
.txtS.block {
    display: block;
}

.txtS.block {
    padding-left: 1.285em;
}

.txtS.float {
    float: left;
    width: 40%;
}

img.margin {
    margin-bottom: 50px;
}


.red-frame {
    background-color: #EB4200;
    padding: 10px 5px;
    margin: 20px;
    text-align: center;
    color: #FFF;
    width: 70%;
    margin-left: 15%;
    font-size: 1.3rem;
    font-weight: bold;
}


/*tab*/
.tabs {
    margin-top: 50px;
    padding-bottom: 40px;
    width: 100%;
    margin: 0 auto;
}

.tab_nav {
    width: 500px;
    margin: 0 auto;
}

.tab_item {
    width: calc(60%/2);
    height: 54px;
    border: 1px solid #CCCCCC;
    background-color: #d9d9d9;
    line-height: 54px;
    font-size: 18px;
    text-align: center;
    color: #565656;
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease;
    padding: 3px;
}

.tab_item:hover {
    opacity: 0.75;
}

.tab_item.left {
    border-radius: 10px 0 0 0;
    margin-left: 20%;
}

.tab_item.right {
    border-radius: 0 10px 0 0;
}

input[name="tab_item"] {
    display: none;
}

.tab_content,
.gray_content,
.vermilion_content {
    padding: 40px 40px 0;
    clear: both;
    overflow: hidden;
    background-color: #F5F5F5;
}

.tab_content,
.gray_content {
    background-color: #F5F5F5;
}

.vermilion_content {
    background-color: #fff4f1;
}

.tab_content {
    display: none;
}

.gray_content,
.vermilion_content {
    display: block;
    margin-bottom: 50px;
}

.gray_content h5,
.vermilion_content h5 {
    font-size: 1.25rem;
    margin-bottom: 1em;
    line-height: 1.75rem;
    text-align: center;
}

#tab1:checked~#tab1_content,
#tab2:checked~#tab2_content {
    display: block;
}

.tabs input:checked+.tab_item {
    background-color: #2066AC;
    border: #2066AC 1px solid;
    color: #fff;
}

.tabs input:checked+.tab_item.tab_item_orange {
    background-color: #EB4200;
    border: #EB4200 1px solid;
}


/*/tab*/

/*btnbox*/
.btnbox-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
}

.btnbox a, .btnbox a {
    border: #D8D8D8 1px solid;
    background-color: #FFF;
    text-align: center;
    padding: 15px 0;
    margin-bottom: 15px;
    font-size: 1.1rem;
    height: 50px;
    align-items: flex-start;
    align-content: center;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.sub-products {
    font-size: 1.0rem;
    margin-bottom: 100px;
   }
   .sub-products .left-bold {
text-align: left;
font-weight: bold;
font-size: 1.1rem;   }
   
   .sub-products .btnbox-flex {
       display: flex;
       flex-wrap: wrap;
       align-items: center;
       padding: 0 50px;
       margin: 0;
   }
   
   .sub-products .btnbox a {
       border: #D8D8D8 1px solid;
       background-color: #FFF;
       text-align: center;
       padding: 15px 0;
       margin-bottom: 15px;
       font-size: 1.0rem;
       height: 30px;
       align-items: flex-start;
       align-content: center;
       display: flex;
       justify-content: center;
       flex-wrap: wrap;
   }

.no-flex a {
    display: block;
}


.btnbox span.txt-sub {
    display: inline;
}

.btnbox-1 {
    width: 100%;
}

.yellow a {
    background-color: #FFFAE6;
}


.btnbox-2 {
    width: 49%;
    margin-right: 1.5%;
}

.btnbox-2:nth-child(2n) {
    margin-right: 0%;
}


.btnbox p span.txt-sub {
    bottom: 0.2em;
    padding-left: 0.1em;
}


.btnbox a:link,
.btnbox a:visited,
.btnbox a:hover,
.btnbox a:active,
#container .sub-products .btnbox a:link,
#container .sub-products .btnbox a:visited,
#container .sub-products .btnbox a:hover,
#container .sub-products .btnbox a:active {
    text-decoration: none;
    color: #000;
}

.btnbox a:hover,
.btnbox a:active {
    text-decoration: none;
    opacity: 0.6;
    background-color: #FFE1CA;
}

/*/btnbox*/

/*btnbox-r*/


.sub-products .btnbox-r a {
    border: #D8D8D8 1px solid;
    background-color: #FFFAE6;
    text-align: center;
    padding: 10px 0;
    margin-bottom: 15px;
    font-size: 0.95rem;
    height: 30px;
    align-items: flex-start;
    align-content: center;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    border-radius: 30px;
}

.btnbox-r {
    width: 45%;
    margin-right: 2.5%;
    margin-left: 2.5%;
}

.btnbox-r:nth-child(2n) {
    margin-right: 0%;
}


.btnbox-r a:link,
.btnbox-r a:visited,
.btnbox-r a:hover,
.btnbox-r a:active {
    text-decoration: none;
}

.btnbox-r a:hover,
.btnbox-r a:active {
    text-decoration: none;
    opacity: 0.6;
    background-color: #FFE1CA;
}


/*/btnbox subproducts*/

/*QA*/

.qa {
    font-size: 1.1rem;
    text-align: left;
    line-height: 1.8rem;
}

.question {
    font-size: 2rem;
    color: #FE766F;
    padding-right: 20px;
}

.qaq {
    background-color: #FFEFEE;
    padding: 16px 30px;
    border-radius: 24px;
    display: flex;
    align-items: center;
}

.qaq-2line {
    background-color: #FFEFEE;
    padding: 16px 30px;
    border-radius: 24px;
    display: flex;
    align-items: topannotation;
}

.qaa {
    padding: 16px 20px 40px;
    border-radius: 24px;
    padding-left: 30px;
}



/*sub-products*/
.sub-products {
    border: #000 1px solid;
    padding: 30px;
}

/*movie*/
.movie_link_list ul {
    width: 860px;
    margin-left: 50px;
}

.movie_link_list ul li {
    max-width: 400px;
}


/*add 20210428*/

.products_top .outer>.colbox {
    margin-bottom: 4.375%;
    padding-bottom: 6.25%;
}

.products_top .bnrbox.narrow {
    max-width: 664px;
}

.products_top .prod {
    width: 47%;
}

.products_top .btnimg a.pdf {
    margin: 2.97% 0 5.56%;
}

.products_top #products p.add {
    margin: 0.55em 0 0;
}

#stemfit p.add {
    border: #ff0000 solid 2px;
    font-size: 1.125rem;
    margin: 5.75em 0 0.75em;
    padding: 0.33em;
    text-align: center;
}

.basic04 .flex {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.basic04 .imgbox {
    margin-bottom: 57px;
    padding: 0;
}

.basic04 .flex .imgbox {
    margin-bottom: 50px;
    width: 46.66%;
}

.basic04 .flex .imgbox p {
    margin-bottom: 1em;
}

.basic04 .Features .imgbox .txt {
    margin-bottom: -1em;
}

#news p.add {
    box-sizing: border-box;
    margin: 0 auto 2em;
    max-width: 900px;
    padding: 0.9em 0.33em;
}

#news p.add b {
    font-size: 1.375rem;
}

/*add 20210715*/

div.box {
    border: #969696 solid 1px;
    margin-top: 5.52%;
    padding: 3.23%;
}

.imgR {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 2.8%;
}

.imgR .txt {
    width: 78.125%;
}

.box .ttl {
    font-size: 1.375rem;
    margin-bottom: 0.5em;
}

.bg_gr {
    background-color: #f0f0f0;
    box-sizing: border-box;
    display: inline-flex;
    flex-wrap: wrap;
    line-height: 1.4;
    padding: 3.42% 5.57% 2.7%;
    width: 100%;
}

.bg_gr ul:first-child {
    margin-right: 3em;
}

.bg_gr ul li {
    padding-left: 0.75em;
    text-indent: -0.75em;
}

.box>ul {
    align-items: flex-start;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.box>ul li {
    align-self: stretch;
    background-color: #fff4f1;
    border: #ff0000 solid 1px;
    box-sizing: border-box;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.125rem;
    font-weight: bold;
    margin: 0.44em 0 0.5em;
    padding: 1.11em;
    text-align: center;
    width: 49.1%;
}

.box>p.red {
    margin: 0.63em 0 0;
}



.campaign .contctbox,
.campaign #footer {
    background-color: #fff;
}



.gform-box {
    display: block;
    margin: 1rem auto;
    text-align: center;
}

h1.thanks {
    display: flex;
    min-height: 400px;
    font-size: 1.5rem;
    align-items: center;
    justify-content: center;
}



/*2021.11.19*/
.col2-box {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 90vw;
    width: 920px;
}

.col2-box span {
    display: inline-flex;
    width: 49%;
}

.col2-box.line a {
    display: block;
    width: 100%;
    border: 1px #323232 solid;
    padding: 10px 5px;
    text-align: center;
}

.col2-box.line a img {
    display: block;
    margin: 0 auto;
    max-height: 10vw;
}

.bnr-link {
    display: block;
    margin: 15px auto 60px;
    max-width: 90vw;
    width: 900px;
}






/* 230319*/
.w400 {
    width: 300px;
}

.w800 {
    width: 800px;
}

.w860 {
    width: 860px;
}

.w960 {
    width: 960px;
}

.ta_center {
    text-align: center;
    margin: 0 auto;
}

span.black {
    color: #000;
}


h2 sub {
    font-size: 10%;
    vertical-align: bottom;
    bottom: -0.3em;
}

.inline-block {
    display: inline-block;
}

.sns_area a[target="_blank"]:after {
    content: " ";
    display: none;
    width: 0;
    height: 0;
    margin-left: 0;
    background: none;
}

.sns_area {
    text-align: center;
    justify-content: center;
    }
