@charset "utf-8";

.itemCont {
    width: 750px;
    margin: 48px auto 48px;
}
.itemCont section {
    width: 750px;
}
h2, h3 {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
}

.itemCont p,h2,h3 {
 font-feature-settings: "palt";
}


/* firstView */
.firstView {
    position: relative;
}
.shoulder {
    position: absolute;
    top: 24px;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 2.25rem;
    color: #ee4488;
    font-weight: bold;
    line-height: 1.33;
}
.firstView h1 {
    position: absolute;
    top: 132px;
    left: 0;
    right: 0;
    text-align: center;
}
.refresh {
    position: absolute;
    top: 486px;
    right: 24px;
}
.lemonFlavor {
    position: absolute;
    top: 927px;
    right: 279px;
    font-size: 2rem;
    color: #00aaaa;
    text-align: center;
    line-height: 1.125;
}

/* worries */
.worries {
    position: relative;
}
.worries h2 {
    position: absolute;
    top: -6px;
    left: 0;
    right: 0;
    text-align: center;
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 3rem;
    color: #dd3366;
}
.worries h2 strong {
    font-size: 150%;
    font-weight: 900;
    vertical-align: baseline;
}
.worries ul {
    position: absolute;
    top: 0;
    left: 0;
}
.worries ul li {
    position: absolute;
    font-size: 2.25rem;
    color: #ffffff;
    line-height: 1.25;
    text-shadow: 0 0 9px #333333;
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
}
.worries ul li.worries1 {
    left: 264px;
    top: 144px;
    width: 5em;
}
.worries ul li.worries2 {
    left: 528px;
    top: 276px;
    width: 5em;
}
.worries ul li.worries3 {
    left: 378px;
    top: 510px;
    width: 5em;
}
.worries ul li.worries4 {
    left: 54px;
    top: 624px;
    width: 7em;
}
.worries ul li.worries5 {
    left: 174px;
    top: 780px;
    width: 7em;
}

/* youToo */
.youToo {
    position: relative;
}
.youToo h2 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    font-family: noto sans jp,sans-serif;
    font-size: 3rem;
    font-weight: 900;
    color: #ffffff;
    text-shadow: 0 0 9px #333333;
    text-indent: -0.66em;
}
.youToo h2 strong {
    font-size: 125%;
}
.youToo h2 span {
    /* display: inline-block; */
    margin-left: 0;
}
.youToo ul {
    position: absolute;
    top: 0;
    left: 0;
}
.youToo ul li {
    position: absolute;
}
.youToo ul li.youToo1 {
    left: 12px;
    top: 282px;
    width: 250px;
}
.youToo ul li.youToo2 {
    left: 522px;
    top: 216px;
    width: 214px;
}
.maybe {
    position: absolute;
    bottom: 96px;
    left: 0;
    right: 0;
    text-align: center;
    font-family: noto sans jp,sans-serif;
    font-size: 2.5rem;
    font-weight: 900;
    color: #2244aa;
    text-shadow: 6px 6px 6px #ffffff;
    line-height: 1.25;
    text-indent: -0.33em;
}
.maybe strong {
    font-weight: 900;
    font-size: 125%;
    /* margin-left: -0.33em; */
}

/* opposite */
.opposite {
    position: relative;
}
.opposite .gumTablet {
    position: absolute;
    top: 6px;
    left: 0;
    right: 0;
    text-align: center;
    font-family: noto sans jp,sans-serif;
    font-size: 2.75rem;
    font-weight: 700;
    line-height: 1.25;
}
.oppositeH2 {
    position: absolute;
    top: 136px;
    left: 0;
    right: 0;
    text-align: center;
    width: 100%;
    font-family: noto sans jp,sans-serif;
    padding-top: 48px;
}
.oppositeH2 h2 {
    font-size: 7rem;
    line-height: 1.15625;
    margin-top: -6px;
}
.oppositeH2 picture {
    position: absolute;
    top: 0;
    left: 84px;
}
.oppositeH2 h2 span {
    font-weight: 500;
    color: #ffffff;
}
.oppositeH2 h2 strong {
    font-size: 125%;
    font-weight: 900;
    background: -webkit-linear-gradient(top, #990000, #000000);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.oppositeH2 small {
    font-size: 35%;
    color: #ffffff;
    display: block;
    margin-left: -4.5em;
}
.stronger {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 2rem;
    color: #bb2222;
    line-height: 1.125;
    position: absolute;
    top: 384px;
    right: 54px;
    text-align: center;
}
.stronger strong {
    font-size: 150%;
    font-weight: 900;
}
.compound {
    font-family: noto sans jp,sans-serif;
    font-weight: 500;
    font-size: 1.625rem;
    line-height: 1.25;
    position: absolute;
    bottom: 36px;
    left: 72px;
}
.compound strong {
    font-size: 125%;
    font-weight: 900;
    color: #cc6633;
}

/* cause */
.cause {
    position: relative;
}
.cause h2 {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 3.375rem;
    position: absolute;
    top: 6px;
    left: 0;
    right: 0;
    text-align: center;
    line-height: 1.125;
}
.cause h2 strong {
    font-weight: 900;
    font-size: 133.33%;
}
.cause h2 span {
    text-decoration: underline wavy #ffffff;
    text-decoration-thickness: auto;
    text-underline-offset: 0.25em;
}
.cause ul li {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 2rem;
    text-align: center;
    position: absolute;
    line-height: 1.25;
    color: #ffffff;
}
.cause ul li.cause1 {
    left: 63px;
    top: 195px;
}
.cause ul li.cause2 {
    right: 45px;
    top: 195px;
}
.cause ul li.cause3 {
    left: 42px;
    bottom: 36px;
}
.cause ul li.cause4 {
    right: 33px;
    bottom: 36px;
    text-indent: 1em;
}

/* double */
.double {
    position: relative;
}
.double h2 {
    position: absolute;
    left: 48px;
    top: 24px;
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 3.375rem;
    color: #ee4455;
    line-height: 1.25;
}
.double h2 strong {
    font-size: 150%;
}
.double ul li {
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 2.5rem;
    text-align: center;
    position: absolute;
    line-height: 1.125;
}
.double ul li span {
    color: #ffff00;
}
.double ul li strong {
    font-size: 150%;
    color: #ffffff;
}
.double ul li.double1 {
    left: 75px;
    top: 342px;
    text-shadow: 0 0 12px #006666;
}
.double ul li.double1 strong {
    display: inline-block;
    text-indent: -0.5em;
    padding-left: 0.25em;
}
.double ul li.double2 {
    right: 72px;
    top: 342px;
    text-shadow: 0 0 12px #cc3366;
}

/* mechanism */
.mechanism {
    background-color: #ffe4bc;
    padding-bottom: 24px;
}
.mechanismH2 {
    position: relative;
}
.mechanismH2 h2 {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 3.125rem;
    text-align: center;
    color: #ee9900;
    position: absolute;
    top: 12px;
    left: 0;
    right: 0;
    line-height: 1.125;
}
.mechanismH2 h2 strong {
    font-weight: 900;
    font-size: 150%;
    color: #ee6600;
}
.registered {
    font-size: 1.3125rem;
    position: absolute;
    right: 24px;
    bottom: 12px;
    width: 9em;
    color: #333333;
    line-height: 1.33;
}
.mechanism ol li {
    padding: 0 42px 0;
    position: relative;
}
.mechanism ol li.mechanismOlLi1 {
    padding-top: 0;
}
.mechanism ol li.mechanismOlLi2 {
    padding-top: 96px;
}
.mechanism ol li h3 {
    font-family: noto sans jp,sans-serif;
    font-weight: 600;
    font-size: 3.625rem;
    line-height: 1.1875;
    color: #dd3366;
    margin-top: 12px;
}
.mechanism ol li p {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    margin-top: 12px;
    text-align: justify;
}
.mechanism ol li p strong {
    background-color: #ffff66;
    color: #cc4433;
}
.mechanism1 {
    position: absolute;
    right: 36px;
    top: 0;
}
.mechanism2 {
    position: absolute;
    right: 0;
    top: 12px;
}

/* wComponent */
.wComponent {
    position: relative;
}
.wComponent h2 {
    position: absolute;
    left: 30px;
    top: 60px;
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 3.5rem;
    line-height: 1.1875;
    text-shadow: 3px 3px 1px #FFF, -3px -3px 1px #FFF, -3px 3px 1px #FFF, 3px -3px 1px #FFF, 0px 3px 1px #FFF,  0 -3px 1px #FFF, -3px 0 1px #FFF, 3px 0 1px #FFF;
}
.wComponent h2 span {
    font-size: 125%;
}
.wComponent h2 strong {
    font-size: 125%;
    font-weight: 900;
    color: #00aaaa;
    letter-spacing: -3px;
}
.wComponent h3 {
    position: absolute;
    right: 30px;
    top: 336px;
    font-family: noto sans jp,sans-serif;
    font-size: 3.75rem;
    font-weight: 900;
    line-height: 1.1875;
    color: #ffffff;
    writing-mode: vertical-rl;
    text-orientation: upright;
    text-shadow: 0 0 12px #00aaaa;
}

.wComponent ul {
    position: absolute;
    left: 0;
    top: 0;
}
.wComponent ul li.wComponentUlLi1 {
    position: absolute;
    left: 96px;
    top: 315px;
}
.wComponent ul li.wComponentUlLi1 h4,
.wComponent ul li.wComponentUlLi2 h4 {
    font-family: noto sans jp,sans-serif;
    font-weight: 600;
    font-size: 4rem;
    color: #ffffff;
    width: 7em;
}
.wComponent ul li h5 {
    font-family: noto sans jp,sans-serif;
    font-weight: 500;
    font-size: 3.5rem;
    width: 7em;
    margin-top: 12px;
    text-shadow: 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff;
}
.wComponent ul li.wComponentUlLi1 h5 {
    color: #00aaaa;
}
.wComponent ul li.wComponentUlLi2 h5 {
    color: #ee4488;
    padding-left: 18px;
}
.wComponent ul li p {
    font-size: 2rem;
    font-weight: bold;
    width: 396px;
    line-height: 1.44;
}
.wComponent ul li.wComponentUlLi2 p {
    padding-left: 24px;
}
.wComponent ul li p strong {
    font-weight: bold;
    background-color: #ffff66;
}
.wComponent ul li.wComponentUlLi2 {
    position: absolute;
    left: 234px;
    top: 888px;
}

/* orabarrier */
.orabarrierIntro {
    position: relative;
}
.orabarrierIntro h2 {
    position: absolute;
    left: 48px;
    top: 72px;
    display: block;
}
.orabarrierIntro h2 span {
    font-size: 3.5rem;
    color: #ee4488;
    text-shadow: 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff, 0 0 6px #ffffff;
}
.orabarrierIntro h2 strong {
    display: block;
    font-size: 5.625rem;
    line-height: 1.1875;
    background: -webkit-linear-gradient(top, #3399ff, #333366);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.orabarrierIntro p {
    position: absolute;
    left: 48px;
    top: 228px;
    font-size: 2rem;
    font-weight: bold;
    width: 648px;
    line-height: 1.66;
    text-align: justify;
}
.orabarrierIntro p strong {
    background-color: #ffff66;
}
.orabarrierIntro h3 {
    position: absolute;
    left: 0;
    right: 0;
    top: 540px;
    text-align: center;
    font-family: noto sans jp,sans-serif;
    font-weight: 600;
    font-size: 4.5rem;
    line-height: 1.125;
    color: #2244aa;
    text-shadow: 0 0 12px #ffffff, 0 0 12px #ffffff, 0 0 12px #ffffff, 0 0 12px #ffffff;
}
.orabarrierIntro h3 strong {
    color: #ee4488;
}
.orabarrier ul li {
    position: relative;
}
.orabarrier1 .source {
    position: absolute;
    right: 24px;
    top: 0;
    font-size: 1.5rem;
}
.orabarrier ul li  .utility {
    position: absolute;
    left: 51px;
    top: 60px;
    font-size: 2.25rem;
    text-align: center;
    color: #ffff66;
    font-weight: bold;
    line-height: 1.125;
}
.orabarrier ul li  .utility strong {
    display: block;
    font-size: 200%;
    color: #ffffff;
    font-weight: normal;
}
.orabarrier ul li h4 {
    position: absolute;
    left: 216px;
    top: 54px;
    font-family: noto sans jp,sans-serif;
    font-weight: 500;
    font-size: 2.875rem;
    line-height: 1.125;
    color: #0088aa;
}
.orabarrier ul li h4 strong {
    display: block;
    font-size: 106.25%;
    font-weight: 900;
    color: #dd4477;
}
.orabarrierUlLiText {
  position: absolute;
  left: 60px;
  top: 702px;
  font-size: 2rem;
  font-weight: bold;
  width: 630px;
  line-height: 1.5;
  text-align: justify;
}
.orabarrierUlLiText strong {
    background-color: #ffff66;
}
.orabarrier2 .orabarrierUlLiText {
    top: 504px;
}
.orabarrier3 .orabarrierUlLiText {
    top: 1014px;
    letter-spacing: -0.025em;
}

/* mo2grains */
.mo2grains,
.milkOligosaccharides {
    position: relative;
}
.moreover {
    position: absolute;
    right: 164px;
    top: 80px;
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 4rem;
    color: #ffffff;
    text-shadow: 0 0 12px #ffcc33, 0 0 12px #ffcc33, 0 0 12px #ffcc33, 0 0 12px #ffcc33;
}
.milkOligosaccharides h2 {
    position: absolute;
    left: 48px;
    top: 144px;
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 3.5rem;
    line-height: 1.125;
    color: #009999;
}
.milkOligosaccharides h2 strong {
    display: block;
    font-size: 150%;
    font-weight: 900;
    background: -webkit-linear-gradient(top, #ff88dd, #bb2255);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.milkOligosaccharides .moText {
    position: absolute;
    left: 60px;
    top: 336px;
    font-size: 2rem;
    font-weight: bold;
    width: 630px;
    line-height: 1.5;
    text-align: justify;
}
.milkOligosaccharides .moText strong {
    background-color: #ffff66;
}

/* twoGrains */
.twoGrains {
    position: relative;
}
.twoGrains h2 {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    text-align: center;
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 5rem;
    line-height: 1;
    color: #ff6633;
    text-shadow: 0 0 12px #ffffff, 0 0 12px #ffffff, 0 0 12px #ffffff, 0 0 12px #ffffff;
}
.twoGrains h2 strong {
    font-size: 125%;
}
.futatsubuni,
.gyoshuku {
    position: absolute;
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 7.5rem;
    line-height: 1.0625;
    background: -webkit-linear-gradient(top, #3399ff, #333366);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.futatsubuni {
    left: 50px;
    top: 272px;
}
.futatsubuni strong {
    font-size: 133.33%;
}
.futatsubuni small {
    font-size: 25%;
    display: block;
    margin-left: 1.5em;
    letter-spacing: 0.5em;
}
.gyoshuku {
    right: 48px;
    bottom: 12px;
    font-size: 8.75rem;
}
.orabarrier80,
.milkOligosaccharides300 {
    position: absolute;
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 2.5rem;
    color: #ffffff;
    text-align: center;
    line-height: 1;
}
.orabarrier80 {
    right: 48px;
    top: 414px;
    text-shadow: 0 0 12px #009999, 0 0 12px #009999;
}
.milkOligosaccharides300 {
    left: 45px;
    bottom: 90px;
    text-shadow: 0 0 12px #cc3366, 0 0 12px #cc3366;
    letter-spacing: -0.05em;
}
.orabarrier80 span,
.milkOligosaccharides300 span {
    display: block;
    font-size: 150%;
    color: #ffff99;
    letter-spacing: 0;
}
.orabarrier80 small,
.milkOligosaccharides300 small {
    font-size: 33.33%;
    vertical-align: middle;
}

/* shutDown */
.shutDown {
    position: relative;
}
.shutDownBalloon {
    position: absolute;
    right: 48px;
    top: 24px;
}
.shutDown h2 {
    position: absolute;
    left: 12px;
    top: 144px;
}
.shutDownBalloon p {
    font-size: 2.75rem;
    line-height: 1.25;
    font-weight: bold;
    color: #ffffff;
    position: absolute;
    left: 66px;
    top: 36px;
}
.lick {
    font-size: 2rem;
    line-height: 1.25;
    font-weight: bold;
    color: #ffffff;
    position: absolute;
    left: 102px;
    bottom: 273px;
}
.lick strong {
    text-decoration: underline wavy #ffff00;
    text-decoration-thickness: auto;
    text-underline-offset: 0.25em;
}
.etiquetteCare {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 2rem;
    color: #224499;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 192px;
    text-align: center;
}
.proceedToPurchase {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 18px;
    text-align: center;
}

/* usersVoice */
.usersVoice,
.usersVoiceTitle {
    position: relative;
}
.usersVoiceTitle h2 {
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 2.8125rem;
    line-height: 1.25;
    color: #dd6666;
    position: absolute;
    left: 132px;
    top: 60px;
}
.usersVoice ul li {
    position: relative;
}
.usersVoice ul li h3 {
    font-family: noto sans jp,sans-serif;
    font-weight: 700;
    font-size: 3.375rem;
    line-height: 1.25;
    color: #885555;
    position: absolute;
}
.usersVoice ul li p {
    font-size: 2rem;
    font-weight: normal;
    width: 600px;
    line-height: 1.5;
    text-align: justify;
    position: absolute;
}
.usersVoice ul li p span {
    display: block;
    text-align: right;
    font-size: 87.5%;
    margin-top: 1em;
}
.usersVoiceUlLi1 h3 {
    left: 72px;
    top: 0;
}
.usersVoiceUlLi1 p {
    left: 72px;
    top: 156px;
}
.usersVoiceUlLi2 h3 {
    left: 288px;
    top: 60px;
}
.usersVoiceUlLi2 p {
    left: 72px;
    top: 216px;
}
.usersVoiceUlLi3 h3 {
    left: 72px;
    top: 60px;
}
.usersVoiceUlLi3 p {
    left: 72px;
    top: 216px;
}
.usersVoice .postscript {
    position: absolute;
    right: 0;
    bottom: 6px;
    font-size: 1.5rem;
    line-height: 1.33;
    text-align: right;
}

/* certification */
.certificationHeader {
    position: relative;
}
.globalStandardsLogo {
    position: absolute;
    top: 66px;
    left: 0;
    right: 0;
    text-align: center;
}
.certificationHeader h2 {
    font-family: 'noto serif jp',serif;
    font-size: 3.3125rem;
    font-weight: 700;
    color: #333366;
    position: absolute;
    top: 180px;
    left: 0;
    right: 0;
    text-align: center;
}
.certificationHeader h2 span {
    font-size: 150%;
    font-weight: 700;
    color: #996600;
    margin-right: 0.0625em;
}
.certificationHeader h2 strong {
    font-size: 125%;
    font-weight: 700;
    color: #0099ff;
    margin-left: 0.0625em;
}
.certificationHeader h2 small {
  font-size: 100%;
  margin: 0 -0.25em;
}
.gmp,
.haccp,
.jas,
.relief {
    position: relative;
}
.gmp h3,
.haccp h3,
.jas h3 {
    font-family: 'noto serif jp',serif;
    font-size: 3.75rem;
    font-weight: 700;
    color: #996600;
    position: absolute;
    left: 120px;
    top: 36px;
}
.gmp p,
.haccp p.haccpText01,
.haccp p.haccpText02,
.jas p {
    position: absolute;
    left: 60px;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: justify;
}
.gmp p {
    top: 138px;
    width: 456px;
}
.haccp p.haccpText01 {
    top: 138px;
    width: 456px;
}
.haccp p.haccpText02 {
    top: 386px;
    width: 624px;
}
.jas p {
    top: 132px;
    width: 624px;
}
.gmp ul {
  position: absolute;
  top: 396px;
  left: 60px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  width: 624px;
  text-align: justify;
}
.gmp ul li span {
    color: #996600;
}
.gmp p.aboutGmp,
.haccp p.aboutHaccp,
.jas p.jasCertification {
    position: absolute;
    left: 60px;
    font-size: 1.3125rem;
    font-weight: normal;
    width: 624px;
    text-align: justify;
    line-height: 1.5;
}
.gmp p.aboutGmp {
    top: 666px;
}
.haccp p.aboutHaccp {
    top: 546px;
}
.jas p.jasCertification {
    top: 252px;
}
.relief p {
    font-family: 'noto serif jp',serif;
    font-size: 2.5rem;
    font-weight: 700;
    color: #333366;
    line-height: 1.5;
    position: absolute;
    top: 12px;
    left: 0;
    right: 0;
    text-align: center;
}

/* pioneer */
.pioneer h2 {
    position: relative;
    font-family: 'noto serif jp',serif;
    font-weight: 700;
    color: #ffffff;
}
.pioneer h2 span {
    display: block;
    position: absolute;
    font-size: 2.75rem;
    top: 78px;
    left: 318px;
    border-bottom: 2px solid #ffffff;
    padding-bottom: 18px;
}
.pioneer h2 strong {
    display: block;
    position: absolute;
    font-size: 5rem;
    top: 156px;
    left: 312px;
}

/* chronology */
.chronology {
    position: relative;
}
.chronology ol {
    position: absolute;
    left: 0;
    top: 0;
}
.chronology ol li {
    font-size: 1.875rem;
    font-weight: bold;
    line-height: 1.5;
    width: 480px;
    position: absolute;
    left: 192px;
}
.chronology ol li span {
    display: block;
    font-size: 112.5%;
}

.chronology ol li strong {
    font-weight: normal;
    display: inline-block;
    vertical-align: top;
    line-height: 1.33;
}
.d200905 {
    top: 30px;
}
.d201405 {
    top: 207px;
}
.d201810 {
    top: 508px;
}

/* question */
.question h2 {
    position: relative;
}
.question h2 strong {
    position: absolute;
    left: 150px;
    top: 66px;
    font-family: noto sans jp,sans-serif;
    font-size: 2.75rem;
    font-weight: 700;
    color: #0099bb;
    line-height: 1.25;
}
.question h2 span {
    position: absolute;
    left: 150px;
    top: 186px;
    font-family: noto sans jp,sans-serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #666666;
}

/* faq */
.faq {
    text-align: center;
    padding-bottom: 14px;
    background-image: url("../../../img/item/breathguard/bg_faq.jpg");
    background-size: cover;
}
.faq h2 {
    font-family: noto sans jp,sans-serif;
    font-weight: 900;
    font-size: 3rem;
    color: #663300;
    line-height: 1.25;
    display: inline-block;
    margin-top: 24px;
    position: relative;
    width: 8em;
    text-align: center;
}
.faq h2::before,
.faq h2::after {
    content: "";
    display: block;
    width: 42px;
    height: 66px;
    background-image: url("../../../img/item/breathguard/faq_line.png");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 6px;
}
.faq h2::before {
    left: 0;
    transform: scaleX(-1);
}
.faq h2::after {
    right: 0;
}
.faqDl {
    margin-top: 30px;
    padding: 0 3.75%;
	text-align: left;
}
.faqBox {
    margin-bottom: 24px;
    color: #663300;
    border: solid 3px #cc9966;
    border-radius: 12px;
    background-color: #ffffff;
	text-align: justify;
}

.faqBox input {
    display: none;
}
.faqBox .faqAnswer {
    color: #444444;
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: .2s;
    font-size: 1.5rem;
    line-height: 1.66;
}
.faqBox .faqAnswer ul li {
	list-style: circle;
	margin-left: 1em;
}

.faqBox label {
    position: relative;
    display: block;
    font-weight: 700;
    transition: all .2s;
    font-size: 100%;
    line-height: 1.5;
    padding: 2.5% 12.5% 2.5% 5%;
}
[type="checkbox"]:not(:checked) + label, [type="checkbox"]:checked + label {
    cursor: pointer;
}
.faq [type="checkbox"]:not(:checked) + label::before,
.faq [type="checkbox"]:checked + label::before {
    content: '';
    display: inline-block;
    position: absolute;
    right: 5%;
    left: auto;
    top: 43.75%;
    width: 36px;
    height: 20px;
    background-image: url(../../../img/item/breathguard/arrow_sp.png);
    background-size: contain;
    border: none;
    box-shadow: none;
}
.faqBox label span {
    font-size: 2.5rem;
    margin-right: 0.33em;
    line-height: 1.125;
    display: inline-block;
    vertical-align: top;
}
.faqBox label strong {
    font-size: 2rem;
    width: 87.5%;
    line-height: 1.33;
    display: inline-block;
    vertical-align: top;
}
.faqQuestion:checked + label + .faqAnswer {
    height: auto;
    padding: 1.25% 5% 3.75% 5%;
    opacity: 1;
    border-top: solid 1px #cc9966;
}
.faqBox .faqAnswer > span {
    font-size: 2.5rem;
    font-weight: 700;
    margin-right: 0.33em;
    color: #cc3333;
}
a.faqBtn {
  display: block;
  font-size: 3rem;
  text-decoration: none;
  background-color: #669933;
  color: #ffffff;
  border-radius: 12px;
  width: 83.75%;
  line-height: 1;
  margin: 48px auto 36px;
  padding: 24px 0 30px;
  box-shadow: 0 0 9px #999999;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 900;
}
a.faqBtn:visited {
    color: #ffffff;
}
a.faqBtn:hover {
    text-decoration: none;
}

/* cleanIn10Minutes */
.goodBye,
.youTooB {
    position: relative;
}
.goodBye h2 {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 4rem;
    color: #ee4488;
    text-shadow: 3px 3px 1px #FFF, -3px -3px 1px #FFF, -3px 3px 1px #FFF, 3px -3px 1px #FFF, 0px 3px 1px #FFF, 0 -3px 1px #FFF, -3px 0 1px #FFF, 3px 0 1px #FFF;
    position: absolute;
    left: 0;
    right: 0;
    top: 36px;
    text-align: center;
}
.goodBye ul {
    position: absolute;
    left: 0;
    top: 90px;
    display: flex;
    flex-wrap: wrap;
}
.goodBye ul li {
    width: 50%;
    height: 28px;
    padding-top: 252px;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900;
    font-size: 1.75rem;
    color: #444444;
    text-shadow: 3px 3px 1px #FFF, -3px -3px 1px #FFF, -3px 3px 1px #FFF, 3px -3px 1px #FFF, 0px 3px 1px #FFF, 0 -3px 1px #FFF, -3px 0 1px #FFF, 3px 0 1px #FFF;
}
.youTooB p {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 4.125rem;
    color: #ff88aa;
    position: absolute;
    left: 120px;
    top: 72px;
    line-height: 1.125;
    text-shadow: 3px 3px 1px #FFF, -3px -3px 1px #FFF, -3px 3px 1px #FFF, 3px -3px 1px #FFF, 0px 3px 1px #FFF, 0 -3px 1px #FFF, -3px 0 1px #FFF, 3px 0 1px #FFF;
}
.youTooB h2 {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 84px;
}

/* regular */
.regular {
    position: relative;
}
.changeTheWorld {
    position: relative;
}
.changeTheWorld h2 {
    font-family: 'noto serif jp',serif;
    font-weight: 700;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-shadow: 0 0 24px #ffffff, 0 0 24px #ffffff, 0 0 24px #ffffff;
}
.changeTheWorld h2 span {
    display: block;
    color: #ff6633;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
}
.changeTheWorld h2 span.ctwH2Span1 { 
    font-size: 7.5rem;
    top: 75px;
}
.changeTheWorld h2 span.ctwH2Span2 { 
    font-size: 6rem;
    top: 744px;
}
.manufacturingPatent2 {
    position: absolute;
    left: 24px;
    top: 168px;
}
.regularCourse {
    position: relative;
}
.regularCourse p {
    font-family: noto sans jp,sans-serif;
    font-size: 2.125rem;
    font-weight: 900;
    position: absolute;
    left: 45px;
    top: 84px;
    color: #669933;
}
.regularCourse h3 span {
    font-family: 'noto serif jp',serif;
    font-size: 3rem;
    font-weight: 700;
    position: absolute;
    left: 348px;
    top: 63px;
    color: #ffffff;
}
.regularCourse h3 strong {
    font-family: 'noto serif jp',serif;
    font-size: 4rem;
    font-weight: 700;
    position: absolute;
    left: 348px;
    top: 144px;
    color: #ffff66;
}
.regularCourse ol li {
    position: relative;
}
.regularCourse ol li.freeShipping p.benefit,
.regularCourse ol li.deals p.benefit,
.regularCourse ol li.skipOk p.benefit {
    font-family: 'noto serif jp',serif;
    font-size: 2rem;
    font-weight: 700;
    position: absolute;
    left: 36px;
    color: #ffffff;
}
.regularCourse ol li.freeShipping p.benefit,
.regularCourse ol li.deals p.benefit,
.regularCourse ol li.skipOk p.benefit {
    top: 36px;
}

.regularCourse ol li.freeShipping p.benefit span,
.regularCourse ol li.deals p.benefit span,
.regularCourse ol li.skipOk p.benefit span {
    font-size: 150%;
    padding-left: 6px;
}
.regularCourse ol li.freeShipping h4,
.regularCourse ol li.deals h4,
.regularCourse ol li.skipOk h4 {
    font-family: 'noto serif jp',serif;
    font-size: 3.375rem;
    font-weight: 700;
    position: absolute;
    left: 180px;
    top: 36px;
    color: #ff6666;
}
.regularCourse ol li.freeShipping p,
.regularCourse ol li.deals p,
.regularCourse ol li.skipOk p {
    width: 600px;
    font-size: 2rem;
    line-height: 1.5;
    font-weight: normal;
    color: #000000;
    text-align: justify;
    position: absolute;
    left:  74px;
    top: 144px;
}
.regularCourse ol li.freeShipping p strong,
.regularCourse ol li.deals p strong,
.regularCourse ol li.skipOk p strong {
    font-weight: bold;
    background: linear-gradient(transparent 50%, #ffccdd 0%);
}
.regular a {
    display: block;
    position: absolute;
    right: 15px;
    bottom: -6px;
}

/* caution */
.caution {
     background-color: #79af78;
     padding: 24px 0 36px;
}
.regularCoursesCaution {
    width: 680px;
    margin: 0 auto;
    background-color: #ffffff;
    border-radius: 12px;
    padding-bottom: 24px;
}
.regularCoursesCaution h2 {
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    color: #79af78;
    padding-top: 18px;
}
.regularCoursesCaution ul {
    width: 600px;
    box-sizing: border-box;
    margin: 20px auto;
    font-size: 1.375rem;
    line-height: 1.5;
    color: #666666;
    text-align: justify;
    font-feature-settings: "palt";
    text-indent: -1em;
    padding-left: 1em;
    letter-spacing: 0.02em;
}







