@charset "utf-8";

/* -------------------------------------------
Auther: design studio tom'sOne
        Tommy Tsutsui
        https://toms1.net/
Last modefied: 25/Mar/2020
------------------------------------------- */

/* -------------------------------------------
 Reset
------------------------------------------- */
html{font-size:62.5%;}body,a,address,header,html,iframe,nav{padding:0;margin:0}address,header,html,iframe,nav{border:0;outline:0}abbr,article,aside,audio,b,canvas,cite,code,del,details,dfn,em,fieldset,figcaption,figure,form,hgroup,i,img,ins,kbd,label,legend,mark,menu,object,pblockquote,pre,q,samp,span,strong,sub,summary,sup,time,var,video{background:0 0;margin:0;padding:0;border:0;outline:0}footer,h1,h2,h3,h4,h5,h6,p,section,small{border:0;outline:0}address,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a img,figure{vertical-align:top}abbr[title],dfn[title]{cursor:help}input,select{vertical-align:middle}noscript{margin:0}

/* Desktop Hide Items */
#trigger-overlay, #spStepBTA5, #spStepBTPost { display: none !important; }

img { width: 100% !important; height: auto; vertical-align: top; }

/* -------------------------------------------
 Fonts
------------------------------------------- */
body, .FDefault {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.homeLink:after, #globalNav, #subNavi, .telWindow, #initialBT, #initialWindow, #BLTWindow, #lineName, .BSIST, #TECopy, .pagemainCopy, #TIMessage,
.PTName, .linkBT01, .PNList, .BCReserve, .BBLTime, #botCalendar, .botPageLink a, .topST, .topTBalanceST, .TTBGCap, .TBBCap, .TFSecST, #TFRList, .TFFST,
#botSideInfo, .FSNum, #nextSTFeature01, .IIMCaption, #TBBTST, #TBBOutLink, #PWSST, .PWSIST, .DProST, .bookBuy, .treatTitle, .sympST, .okCopy,
.flowTitle, .FStepST, #analyzFeeList, #analyzReserve, #RGTelNum, #scheduleTA, #scheduleNotice, .VIHead, #blogPagination, #VDTitle, #VDSymptoms,
#VDSympList, .voiceST, .voiceDT, #VoiceIndNavi, .qaST, .accessST, #newsArticleTitle, #NADTime, #snsST, .sideListST, #blogArticleTitle,
#blogBody h2, #newsBody h2, #blogBody h3, #newsBody h3, .indPageNavi, .BACat, #blogCatName {
  font-family: source-han-sans-japanese, sans-serif; font-weight: 400; font-style: normal; font-feature-settings : "palt"; }

.FSTit, #TBBCatchCopy, #directorName, .staffData, .FEIcap, .BIBox dt, .treatBBST, .FMeritST, .FFIMcap, .reserveST {
  font-family: source-han-serif-japanese; }

.FSTit { font-weight: 300; }

.TSEN, .FSNum b, #nextSTFeature01 { font-weight: 400; }

.homeLink:after, #initialBT, #botCalendar, .botPageLink > a, .IDIPrice, .PNList, #TIMessage, .topTBalanceST, .TFSecST, #TFRList, .TFFST,
#botSideInfo, #TBBOutLink, #PWSST, .PWSIST, .sympST, .treatBBST, .FStepST, #FSTelNum, #scheduleNotice, #scheduleNotice, .FMeritST, .FFIMcap, .reserveST, .VIHead, #VDTitle,
#VDSymptoms, #VDSympList, .voiceDT, .FSNum, #TBBCatchCopy, #directorName, .staffTitle, .FEIcap, .BIBox dt, .okCopy, #blogPagination,
#directorVoiceST, .QACST, .accessST, #newsArticleTitle, .sideListST, #blogArticleTitle, #blogBody h2, #newsBody h2,
#blogBody h3, #newsBody h3, .BACat, #blogCatName { font-weight: 500; }

.SSTitle, #TFRSix { font-weight: 700; }

.PTName, .PNList, #TNewsST, #TFSecond, #TTreatmentST, #TVoiceST, .TVLItem, #PWSST, #staffST, #facilitieST, #mediaST, .treatTitle, #treat01Copy,
#reserveContainer, #feeContainer {
  text-shadow: 1px 1px rgba(255,255,255,1); }

#globalNav, #TNList > li, .PWSCopy, .bookBuy a, #treatPleaseRefrain, .TWCopy02, .indPageNavi, .newsItem { text-shadow: 1px 1px rgba(255,255,255,.7); }

.homeLink:after { text-shadow: -2px -2px rgba(255,255,255,.9); }

/* -------------------------------------------
 Common
------------------------------------------- */
@font-face { font-family: "Yu Gothic M"; src: local("Yu Gothic Medium"); }
@font-face { font-family: "Yu Gothic M"; src: local("Yu Gothic Bold"); font-weight: bold; }

body {
 position: relative; color: #333; background: #fff; -webkit-text-size-adjust: 100%; font-size: 1em;
 line-height: 1; width: 100%; min-width: 1100px; z-index: 1; }

#globalHeader, footer { width: 100%; margin: 0; position: relative; }

.BGBeige, .BGGreen, .BGBlue { margin: 0; position: relative; }
.BGBeige { background: #f9f6f2; } .BGGreen { background: #f0f7ee; } .BGBlue { background: #eefafc; }

.mag20 { margin-top: 20px; } .mag50 { margin-top: 50px; }
.pad01 { padding-top: 1em; }

.ls0 { letter-spacing: 0; } .ls05 { letter-spacing: .05em; } .ls10 { letter-spacing: .1em; }
.ls15 { letter-spacing: .15em; } .ls20, .win .ieLs20 { letter-spacing: .2em; } .ls30 { letter-spacing: .3em; }
.ls50 { letter-spacing: .5em; } .ls100 { letter-spacing: 1em; }

.lsM05 { letter-spacing: -.05em; } .lsM10 { letter-spacing: -.1em; } .lsM15 { letter-spacing: -.15em; }
.lsM20 { letter-spacing: -.2em; } .lsM25 { letter-spacing: -.25em; } .lsM30 { letter-spacing: -.3em; }
.lsM50 { letter-spacing: -.5em; } .lsM75 { letter-spacing: -.75em; }

.lsN01 { margin: 0 -1px; } .lsN02 { margin: 0 -2px; } .lsEM02 { margin: 0 -.2em; }

.InBlock { display: inline-block; }

.fLeft { float: left; } .fRight { float: right; }

.rota15 {
  margin-left: -.15em; display: inline-block; vertical-align: -.05em; -webkit-transform: rotate(20deg); transform: rotate(20deg); }

/* Common Image */
.homeLink:before, #bottomLogo, #SNTMark, .TWTMark, #IDTelMark, #TISign:before, #BPLTCopy:before,
#BSLFBMark, #BSLLineMark, #BSIAMap, #BSICard, #BLineIcon:after {
 background-image: url(../common_im/common.svg);
 background-repeat: no-repeat; background-size: 270px 290px; }

/* Main Container */
.headStage, #GHead { min-width: 1100px !important; margin: 0 auto; position: relative; }

#GHead { max-width: 1800px; }
.pageEyecatch { position: absolute; top: 0; left: 0; width: calc(100% - 100px); padding: 0 50px; overflow: hidden; }

#pageHead { height: 380px; }

.wrapOuter { min-width: 1000px; max-width: 1280px;  margin: 0 auto; padding: 0 50px; }

.wrapInner { max-width: 1380px; margin: 0; }

.secWrapp { width: 100%; padding: 60px 0; }
.secWrapp02 { width: 100%; padding: 50px 0; }

/* Page Title */
.pageTitle { background: rgba(255,255,255,.7); max-width: 1280px; height: 225px; margin: 155px auto 0; padding: 0 50px; position: relative; }

.PTName { color: #494949; font-size: 4.2rem; text-align: center; letter-spacing: .1em; margin: 0; padding-top: 95px; position: relative; }
.PTNSM { color: #666; font-size: 3.4rem; vertical-align: .1em; }

.pageTitle:after { content: ''; position: absolute; left: 50%; display: block; }

#aboutTitle:after {
  top: 55px; background: url(../about/images/page-icon.svg) no-repeat 0 0; background-size: 30px 30px; width: 30px; height: 30px; margin-left: -15px; }

#treatTitle:after {
  top: 56px; background: url(../treatments/images/page-icon.svg) no-repeat 0 0; background-size: 42px 30px; width: 42px; height: 30px; margin-left: -21px; }

#flowTitle:after {
  top: 63px; background: url(../flow-fee/images/page-icon.png) no-repeat 0 0; background-size: 46px 14px; width: 46px; height: 14px; margin-left: -23px; }

#voiceTitle:after {
  top: 56px; background: url(../voice/images/page-icon.svg) no-repeat 0 0; background-size: 32px 30px; width: 32px; height: 30px; margin-left: -16px; }

#qaTitle:after {
  top: 54px; background: url(../qa/images/page-icon.svg) no-repeat 0 0 / 22px 35px; width: 22px; height: 35px; margin-left: -11px; }

#accessTitle:after {
  top: 55px; background: url(../access/images/page-icon.svg) no-repeat 0 0 / 22px 34px; width: 22px; height: 34px; margin-left: -11px; }

#newsTitle:after {
  top: 56px; background: url(../news/images/page-icon.svg) no-repeat 0 0 / 32px 30px; width: 32px; height: 30px; margin-left: -16px; }

#blogTitle:after {
  top: 56px; background: url(../blog/images/page-icon.svg) no-repeat 0 0 / 28px 28px; width: 28px; height: 28px; margin-left: -14px; }

.PTitEN { color: #7e7e7e; font-size: 1.8rem; font-style: normal; margin-top: 5px; display: block; }

/* Page Navi */
.pageNav { background: #f9f6f2; margin: 2px 0 0; padding: 10px 50px 0; position: relative; }

.PNList { max-width: 1380px; height: 40px; margin: 0 auto; padding: 0; }

.PNList li { text-align: center; border-left: 1px solid #d7c7b5; display: block; }
.PNL03 li { width: calc(33.33% - 1px); } .PNL04 li { width: calc(25% - 1px); }

.PNList li:last-of-type { border-right: 1px solid #d7c7b5; }
.PNL03 li:last-of-type { width: calc(33.33% - 2px); }
.PNL04 li:last-of-type { width: calc(25% - 2px); }

.PNList li a { color: #555; font-size: 1.6rem; letter-spacing: .08em; height: calc(100% - 5px); padding-top: 5px; position: relative; z-index: 1; }

.PNList li a:after {
 content: ''; position: absolute; top: 0; left: 0; background: #e2fbd2; z-index: -1;
 width: 0; height: 100%; display: block; -webkit-transform-origin: left top; transform-origin: left top; }
.PNList li a:hover:after { width: 100%; }

.PNList li a:before {
 content: ''; position: absolute; bottom: 9px; left: 50%; width: 0; height: 0; margin-left: -5px;
 width: 4px; height: 4px; border-top: 2px solid #d7c7b5; border-right: 2px solid #d7c7b5; margin-left: -4px;
 -webkit-transform: rotate(135deg); transform: rotate(135deg); }
.PNList li a:hover:before { bottom: 7px; border-color: #9ec97e; }

/* Flex Box */
.flexContainer, .flexC, #globalNav, .PNList, #topInfo, #topTBGraphic, #topFFLInner, #TVListInner, #BBInfoList, #botLinks, #PWSInner,
#directorInfo, .BIBox, .flowStep, #blogWrapp, #blogIndividual {
 display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between;
 -webkit-flex-flow: row wrap; flex-flow: row wrap; }

/* Link Button */
.linkBT01 { font-size: 1.8rem; text-align: center; letter-spacing: .1em; margin: 0 auto; position: relative; }

.linkBT01 a {
  color: #333; text-decoration: none; padding: 20px 0 22px; display: inline-block;
  cursor: pointer; display: block; position: relative; overflow: visible; z-index: 1; }

.linkBT01 a:before, .linkBT01 a:after {
 content: ''; position: absolute; top: 0; left: 0; width: calc(100% - 2px); height: calc(100% - 2px); display: block; }
.linkBT01 a:before { background: #fff; border: 1px solid #bbb; z-index: -2; }

.linkBT01 a:after, #TBBOutLink a:after {
  -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: left top; transform-origin: left top; }
.linkBT01 a:after { background: #777; border: 1px solid #777; z-index: -1; }

.linkBT01 a:hover { color: #fff}
.linkBT01 a:hover:after, #TBBOutLink a:hover:after { -webkit-transform: scaleX(1); transform: scaleX(1); opacity: 1; }

/* Link Sign */
#topTherapyTimes a > i, #TNList a > i, .linkBT01 a > i, .TVLItem i, .BBLItem i, .botPageLink > a i,
#TBBOutLink a > i, .voiceItem i, .PESign, .NESign, #QNList a > i, #newsIndNavi .RLSign, #blogIndNavi .RLSign {
  position: absolute; top: calc(50% - 1px);
  width: 40px; height: 1px; transition: inherit; pointer-events: none; }
#topTherapyTimes a > i { background: #fff; right: 50px}
.botPageLink > a i { background: #fff; right: 40px}
#TBBOutLink a > i { background: #fff; right: 10px}
#TNList a > i { right: 10%; background: #444}
.linkBT01 a > i { right: -20px; background: #444}
.TVLItem i { top: inherit; bottom: 30px; right: 30px}
.TVLItem .TVLSignFe { background: #f24984} .TVLItem .TVLSignMa { background: #29abe2}
.BBLItem i { top: inherit; bottom: 5px; left: 0; background: #29abe2 }
.VIFemale i, .VIMale i { top: inherit; bottom: 25px; right: 30px; background: #f24984} .VIMale i { background: #29abe2}
.PESign { top: calc(50% + 1px); left: 30px; background: #bfa787} .NESign { top: calc(50% + 1px); right: 30px; background: #bfa787}
#blogIndNavi .PESign, #blogIndNavi .NESign { background: #75a73e}
#QNList a > i { background: #fff; top: 24px; right: 30px; width: 24px; -webkit-transform: rotate(90deg); transform: rotate(90deg)}
#blogIndNavi .RLSign, #newsIndNavi .RLSign { top: inherit; bottom: 13px; background: #75a73e; left: calc(50% - 20px)}
#newsIndNavi .RLSign { background: #bfa787}

#topTherapyTimes a > i:before, #TNList a > i:before, .linkBT01 a > i:before, .TVLItem i:before, .BBLItem i:before,
.botPageLink > a i:before, #TBBOutLink a > i:before, .voiceItem i:before, .NESign:before, #QNList a > i:before {
  content: ''; position: absolute; right: 0; bottom: 0; transition: inherit;
  border-top: 1px solid transparent; border-right: 6px solid transparent; }
#topTherapyTimes a > i:before, .botPageLink > a i:before, #TBBOutLink a > i:before, #QNList a > i:before {
  border-left: 3px solid #fff; border-bottom: 4px solid #fff}
#TNList a > i:before { border-left: 3px solid #444; border-bottom: 4px solid #444}
.linkBT01 a > i:before { border-left: 3px solid #444; border-bottom: 4px solid #444}
.TVLItem .TVLSignFe:before, .VIFemale i:before { border-left: 3px solid #f24984; border-bottom: 4px solid #f24984}
.TVLItem .TVLSignMa:before, .VIMale i:before { border-left: 3px solid #29abe2; border-bottom: 4px solid #29abe2}
.BBLItem i:before { border-left: 3px solid #29abe2; border-bottom: 4px solid #29abe2}
.PESign:before, #newsIndNavi .returnList a i:before {
  content: ''; position: absolute; left: 0; bottom: 0; transition: inherit; border-top: 1px solid transparent;
  border-left: 6px solid transparent; border-right: 3px solid #bfa787; border-bottom: 4px solid #bfa787}
.NESign:before { border-left: 3px solid #bfa787; border-bottom: 4px solid #bfa787}
#blogIndNavi .PESign:before { border-right: 3px solid #75a73e; border-bottom: 4px solid #75a73e}
#blogIndNavi .NESign:before { border-left: 3px solid #75a73e; border-bottom: 4px solid #75a73e}

#blogIndNavi .returnList a .RLSign:before, #newsIndNavi .returnList a .RLSign:before {
  content: ''; position: absolute; bottom: 10px; left: 15px; transition: inherit; border-top: 1px solid transparent;
  border-left: 6px solid transparent; border-right: 3px solid #75a73e; border-bottom: 4px solid #75a73e}
#newsIndNavi .returnList a .RLSign:before { border-right: 3px solid #bfa787; border-bottom: 4px solid #bfa787}

#blogIndNavi .returnList a .RLSign:after, #newsIndNavi .returnList a .RLSign:after {
  content: ''; position: absolute; bottom: 0;right: 0; width: 18px; height: 10px;
  border-top: 1px solid #75a73e; border-right: 1px solid #75a73e; transition: inherit; }
#newsIndNavi .returnList a .RLSign:after { border-top: 1px solid #bfa787; border-right: 1px solid #bfa787}

#topTherapyTimes a:hover > i { right: 80px; }
.botPageLink a:hover > i { right: 70px; }
#TNList a:hover > i { right: 15%; }
.linkBT01 a:hover > i { right: 30px; background: #fff; }
.linkBT01 a:hover > i:before { border-left: 3px solid #fff; border-bottom: 4px solid #fff}

#TNLinkBT a:hover > i { right: 0; }
.TVLItem:hover i { right: calc(50% - 20px)}
.BBLItem:hover i { left: 50px}
#TBBOutLink a:hover > i { right: 40px}
.voiceItem:hover i { right: 10px; width: 60px}
a:hover .PESign, #blogIndNavi a:hover .PESign { left: 50px; background: #fff}
a:hover .PESign:before, #blogIndNavi a:hover .PESign:before { border-right: 3px solid #fff; border-bottom: 4px solid #fff}
a:hover .NESign, #blogIndNavi a:hover .NESign { right: 50px; background: #fff}
a:hover .NESign:before, #blogIndNavi a:hover .NESign:before { border-left: 3px solid #fff; border-bottom: 4px solid #fff}
#QNList a:hover > i { top: 30px}

#blogIndNavi .returnList a:hover i, #newsIndNavi .returnList a:hover i { left: 50%; background: #fff; width: 20px}
#blogIndNavi .returnList a:hover i:before, #newsIndNavi .returnList a:hover i:before {
  left: -15px; border-right: 3px solid #fff; border-bottom: 4px solid #fff}
#blogIndNavi .returnList a:hover i:after, #newsIndNavi .returnList a:hover i:after { width: 28px; border-color: #fff}

/* Common Header
------------------------------------------- */
#globalHeader { height: 120px; }

#globalHeader.fixed { background: rgba(255,255,255,.9)}

#GHead { margin: 0 auto; overflow: visible; position: relative; }

#homeLogo { position: absolute; top: 45px; left: 50px; width: 270px; height: 60px; margin: 0; z-index: 9999; }

.homeLink { width: 270px; height: 60px; position: relative; }

.homeLink:before {
  content: ''; position: absolute; top: 0; left: 0; z-index: 0; opacity: 1;
  background-position: 0 0; width: 270px; height: 60px; display: block; }
.homeLink:hover:before { opacity: .35}
.homeLink:after {
  content: 'HOME'; position: absolute; top: 10px; left: 50%; display: block; z-index: 1; opacity: 0;
  color: #00b2e9; font-size: 3.8rem; letter-spacing: .1em; text-indent: .1em; margin-left: -1.5em; }
.homeLink:hover:after { margin-left: -1.25em; opacity: 1; }

.fixed #homeLogo { top: 16px; }
.fixed .homeLink:before { background-size: 216px 232px; }
.fixed #homeLogo, .fixed .homeLink:before { width: 216px; height: 48px; }

.fixed .homeLink:after { top: 11px; font-size: 3rem; margin-left: -2em; }
.fixed .homeLink:hover:after { margin-left: -1.75em; }

/* Global nav */
#GNav { float: right; width: 62.65%; max-width: 732px; height: 80px; padding-right: 50px; }

#globalNav { font-size: 1.6rem; font-weight: bold; margin: 90px 0 0; padding: 0; }

#globalNav li { letter-spacing: .085em; margin: 0; white-space: nowrap; display: block; position: relative; z-index: 9995; }

#globalNav a { color: #555; text-decoration: none; padding: 0 3px 9px 4px; }

#globalNav a:hover { color: #33b7f0; } #globalNav .current, #globalNav .current:hover { color: #555; }

#globalNav .current:before {
  content: ''; position: absolute; top: 45px; left: 50%;
  width: 0; height: 0; border-style: solid; border-width: 0 12px 20px 12px; margin-left: -12px;
  border-color: transparent transparent #fff transparent; opacity: .7; display: block; }
#globalNav .delete:before { opacity: 0; }

#globalHeader.fixed {
 position: fixed; top: 0; left: 0;
 min-width: 1100px; min-height: 0; height: 80px; overflow: visible; z-index: 9990; }

.fixed #globalNav { font-size: 1.5rem; margin-top: 48px; }

@media (min-width: 1568px) { #globalNav .GN05.current:before { display: none} }

/* Sub Nav */
#subNavWrapp { position: absolute; top: 0; right: 0; z-index: 9999; }

#subNavi { margin: 0; padding: 0; }

#subNavi li { float: left; font-size: 1.6rem; text-align: center; letter-spacing: .08em; display: block; position: relative; }

#subNavi li > a { color: #fff; width: 150px; padding: 11px 0 13px; margin-left: 1px; position: relative; }

.fixed #subNavi li { font-size: 1.5rem}
.fixed #subNavi li > a { padding: 7px 0 9px}

#subNavi #SNTelephone > a { width: 100px; }

#SNTMark {
  content: ''; position: absolute; top: 9px; left: 50%; z-index: 9999;
  background-position: -30px -150px; width: 22px; height: 22px; margin-left: -11px; }
.fixed #SNTMark { top: 6px; background-size: 216px 232px; background-position: -24px -120px; width: 18px; height: 18px; }

#subNavi #SNNews .current { color: #f0f0f0; }

#subNavi li > a:before {
 content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; z-index: -1; }

#SNNews a:before, #SNAccess a:before { background: #9e9890; }
#SNBlog a:before { background: #73b51e; }
#SNTelephone > a:before { background: #4eb7e7; }

#subNavi .current:before { background: #a5a5a5; }

#subNavi li > a:after, #detailBT li > a:after {
 content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block;
 z-index: -1; -webkit-transform: scaleX(0); transform: scaleX(0);
 -webkit-transform-origin: left top; transform-origin: left top; }

#SNNews a:hover:after, #SNAccess a:hover:after { background: #73b51e; }
#SNBlog a:hover:after { background: #9e9890; }
#SNTelephone a:hover:after { background: #97deff; }

#subNavi a:hover:after, #detailBT a:hover:after, #detailBT.active a:after {
 -webkit-transform: scaleX(1); transform: scaleX(1); }

#subNavi .current:after { display: none; }

/* Slide In Window */
#subNavi li .telWindow, #initialDiscount #initialWindow, #BPLTelBT #BLTWindow, #BSLLine #BLineWindow {
  display: block; visibility: hidden; opacity: 0; -webkit-transition: all .3s ease .1s; transition: all .3s ease .1s; }
#subNavi li:hover .telWindow, #initialDiscount:hover #initialWindow,
#BPLTelBT:hover #BLTWindow, #BSLLine:hover #BLineWindow { visibility: visible; opacity: 1; }
#subNavi li:after .telWindow, #initialDiscount:after #initialWindow,
#BPLTelBT:after #BLTWindow, #BSLLine:after #BLineWindow { visibility: hidden; opacity: 0; }

/* Telephone Info Window */
.telWindow {
  position: absolute; top: 41px; right: 0; width: 553px; padding: 36px 0 45px; z-index: 9999;
  background: rgba(50,160,210,.95); -webkit-border-radius: 0 0 0 6px; border-radius: 0 0 0 6px;
  -webkit-box-shadow: 0 1px 3px rgba(0,0,0,.25); box-shadow: 0 1px 3px rgba(0,0,0,.25); }
.fixed .telWindow { top: 31px}

#BLTWindow {
  position: absolute; bottom: 71px; left: 0; background: rgba(50, 160, 210,.95); width: 100%; padding: 36px 0 45px;
  z-index: 9999; -webkit-border-radius: 6px 6px 0 0; border-radius: 6px 6px 0 0;
  -webkit-box-shadow: 0 -1px 3px rgba(0,0,0,.2); box-shadow: 0 -1px 3px rgba(0,0,0,.2);}

.TWInfo,.TWTelNum { text-align: center; }
.TWInfo { color: #fff; font-size: 2rem; line-height: 1.75; letter-spacing: .14em; margin: 0; }
.TWTelNum { font-size: 4rem; letter-spacing: .08em; margin: 18px 0 0; }
.TWTelNum a { color: #ff3; text-decoration: none; display: inline-block; cursor: pointer; position: relative; }
.TWSMB { font-size: 1.6rem; letter-spacing: .08em; display: block}

.TWTMark {
  content: ''; position: absolute; top: 13px; left: 50%;
  background-position: -30px -150px; width: 22px; height: 22px; margin-left: -4.4em; }

/* Initial Discount Window */
#initialDiscount { position: fixed; bottom: 40vh; right: 0; z-index: 99999; }
.firefox #initialDiscount { width: 46px}

#initialBT {
  font-size: 2rem; text-align: center; letter-spacing: .15em; max-height: 9em; margin: 0;
  -webkit-font-feature-settings: 'pkna'; font-feature-settings: 'pkna';
  -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

#IDON { color: #fff; padding: 15px 13px 14px; position: relative; display: block; cursor: pointer; overflow: hidden; z-index: 1; }
#IDON:before, #IDON:after {
  content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block;
  -webkit-border-radius: 6px 0 0 6px; border-radius: 6px 0 0 6px; }
#IDON:before { background: #fb871e; z-index: -2}
#IDON:after { background: #73b51e; -webkit-transform: scaleY(0); transform: scaleY(0); -webkit-transform-origin: left top; transform-origin: left top; z-index: -1}
#IDON:hover:after { -webkit-transform: scaleY(1); transform: scaleY(1)}

#initialWindow {
  position: absolute; top: 0; right: 47px; color: #fff; text-align: center; width: 500px; padding: 40px 0; z-index: 9999;
  background: rgba(90,140,10,.95); -webkit-border-radius: 6px; border-radius: 6px;
  -webkit-box-shadow: -1px 1px 2px rgba(0,0,0,.25); box-shadow: -1px 1px 2px rgba(0,0,0,.25); }

#IDMessage { font-size: 2.4rem; letter-spacing: .05em; margin: 0; }
.IDMRota { -webkit-transform: rotate(15deg) scale(1.1); transform: rotate(15deg) scale(1.1); padding-left: .15em; display: inline-block;}

#IDInfo { font-size: 1.8rem; line-height: 1.6; letter-spacing: .08em; margin: 20px 0 0; }
.IDIPrice { font-size: 2.6rem;} .IDIPOff { font-size: 2.2rem; padding: 0 5px}

#IDNavi { font-size: 1.6rem; line-height: 1.8; letter-spacing: .08em; margin: 20px 0 0 }
#IDTelNum { font-size: 3rem; font-style: normal; line-height: 1; margin: 5px 0; display: block; }
#IDTelNum > a { color: #ff0; text-decoration: none; display: inline-block; position: relative; }
.IDTNotice { font-size: 1.5rem; } .IDTOff { font-size: 1.4rem; display: block; }

#IDTelMark {
  content: ''; position: absolute; top: 8px; left: 50%; background-size: 243px 261px;
  background-position: -27px -135px; width: 20px; height: 20px; margin-left: -4.3em; }
.ie11 #IDTelMark { margin-left: -4.45em}

/* Line Window */
#BSLLine { z-index: 99999}

#BSLLine #BLineWindow {
  position: absolute; bottom: 0; right: 0; background: rgba(255,255,255,.95);
  width: 460px; padding: 36px 0 80px; border: 1px solid #00b833;
  -webkit-border-radius: 0 0 10px 0; border-radius: 0 0 10px 0; z-index: -1;
  -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2); box-shadow: 0 1px 2px rgba(0,0,0,.2);}

#BLineIcon {
  background: #00b833; width: 80px; height: 80px; margin: 0 auto; display: block; position: relative;
  -webkit-border-radius: 10px; border-radius: 10px; }
#BLineIcon:after {
  content: ''; position: absolute; top: 11px; left: 9px; background-position: -60px -240px;
  background-size: 324px 348px; width: 62px; height: 59px; }

#lineQRCord { background: url(../common_im/line_qr.png) no-repeat 0 0 / 140px 140px; width: 140px; height: 140px; margin: 25px auto 0; }

#lineName { font-size: 1.8rem; text-align: center; line-height: 1.8; letter-spacing: .1em; margin: 10px 0 0; }

/* SNS Links
------------------------------------------- */
.pageSNS { position: absolute; top: 160px; right: 55px; z-index: 999}

.SNSLinks { justify-content: flex-start; margin: 10px 0 0; padding: 0}

.TSns { width: 34px; margin-right: 10px}

.snsMark {
  background: url(../common_im/sns.svg) no-repeat 0 0 / 194px 34px; width: 34px; height: 34px;
  display: block; position: relative; z-index: 2}

.TSMarkInsta { background-position: 0 0}
.TSMarkUTube { background-position: -40px 0}
.TSMarkX { background-position: -80px 0}
.TSMarkFB { background-position: -120px 0}
.TSMarkLine { background-position: -160px 0}

.TSnsLink { width: 34px; height: 34px; display: block; position: relative; z-index: 1}

.TSnsLink::before, .TSnsLink::after {
  content: ''; position: absolute; top: 0; left: 0; background: #898989; width: 100%; height: 100%;
  border-radius: 6px; display: block; z-index: -5}

.TSnsLink::after {
  -webkit-transform: scale(0); transform: scale(0);  z-index: -1;
  -webkit-transition: all .15s ease-in-out .035s; transition: all .15s ease-in-out .035s}
.TSnsLink:hover::after { -webkit-transform: scale(1); transform: scale(1)}

.TSnsInsta::after { background: url(../common_im/insta_bg.png) no-repeat center center}
.TSnsUTube::after {background: #f50208}
.TSnsX::after { background: #000}
.TSnsFB::after {background: #0370e5}
.TSnsLine::after {background: #47c331}

/* Footer
------------------------------------------- */
footer { background: #f0f7ee; margin-top: 1px; padding-top: 60px; }

#footInner { max-width: 1280px; margin: 0 auto; padding: 0 50px 50px; position: relative; z-index: 1; }

#bottomAdress { float: left; width: 37%; min-width: 420px; max-width: 480px; }

#bottomLogo { background-position: 0 -80px; width: 234px; height: 53px; margin: 0; }

.botCompAddress { font-size: 1.6rem; letter-spacing: .05em; white-space: nowrap; margin: 20px 0 0; }

/* Bottom Calender */
#botCalendar { width: 100%; margin-top: 55px; }
.BCReserve {
  color: #fff; background: #a2c779; font-size: 1.7rem; text-align: center; letter-spacing: .2em; text-indent: .2em;
  margin: 0; padding: 3px 0 5px; }

#BCalWrapp { background: #fff; padding: 10px 10px 14px; }

#BCalTA, #scheduleTA { width: 100%; border-collapse: collapse; }
#scheduleTA { width: 540px}

#BCalTA th, #BCalTA td, #scheduleTA th, #scheduleTA td {
  color: #457e00; font-size: 1.6rem; font-weight: 500; text-align: center; white-space: nowrap; padding: 8px 10px 7px}
#scheduleTA th, #scheduleTA td { font-size: 2rem; padding: 12px 10px 11px}

#BCalTA tr:nth-of-type(3) th, #BCalTA tr:nth-of-type(3) td { padding-top: 2px}

#scheduleTA tr:nth-of-type(1) th, #scheduleTA tr:nth-of-type(1) td { padding-top: 10px}
#scheduleTA tr:nth-of-type(2) th, #scheduleTA tr:nth-of-type(2) td { padding-top: 15px}
#scheduleTA tr:nth-of-type(3) th, #scheduleTA tr:nth-of-type(3) td { padding-top: 6px}

#BCalTA tr:nth-of-type(1) th, #scheduleTA tr:nth-of-type(1) th { border-bottom: 2px solid #a2c779}
#BCalTA tr th:nth-of-type(1), #scheduleTA tr th:nth-of-type(1) { border-right: 2px solid #a2c779; letter-spacing: .05em}

#BCalTA tr th:nth-of-type(2), #BCalTA tr td:nth-of-type(1) { padding-left: 15px}
#scheduleTA tr th:nth-of-type(2), #scheduleTA tr td:nth-of-type(1) { padding-left: 18px}

.calHyph { font-size: 1.3rem; vertical-align: .05em; margin: 0 2px; }
#scheduleTA .calHyph { vertical-align: .15em; margin: 0 3px}
#scheduleTA .calDot { margin: 0 1px}

#BCalInfo { color: #457e00; font-size: 1.4rem; text-align: center; letter-spacing: .05em; margin: 8px 0 0; }
.BCISign { color: #d30; font-size: 2rem; margin-right: 4px; vertical-align: -.25em;}

/* Bottom Side Link */
#bottomSide { float: right; width: calc(50% + 10px); max-width: 640px; }

#botLinks { width: 100%; } #BPLTelBT { position: relative; }

.botPageLink, .botSnsLink { height: 70px; margin: 0; }
.botPageLink { width: calc(100% - 100px); }
.botSnsLink { width: 70px; height: 70px; }

#BPLAccess, #BSLLine { margin-top: 20px; } #BSLLine { position: relative}

.botPageLink > a, .botSnsLink a {
  text-decoration: none; text-align: center; width: 100%; height: 100%; cursor: pointer;
  display: block; position: relative; overflow: hidden; z-index: 1; }
.botPageLink > a { color: #fff; letter-spacing: .1em; }
.botSnsLink a { -webkit-border-radius: 10px; border-radius: 10px; }

#BPLTCopy, #BPLAcCopy { position: absolute; left: 0; width: 100%; }
#BPLTCopy { top: 14px; font-size: 1.6rem; position: relative; }
#BPLAcCopy { top: 25px; font-size: 1.7rem; letter-spacing: .15em; }.ie11 #BPLAcCopy { top: 26px}
#BPLTNum { font-size: 2.1rem; font-style: normal; letter-spacing: .12em; margin-top: 6px; display: block; }
#BPLTCopy:before {
  content: ''; position: absolute; top: 30px; left: -22px;
  background-position: -10px -260px; width: 15px; height: 15px; display: block; }
.edge #BPLTCopy:before { margin-left: -64px} .ie11 #BPLTCopy:before { margin-left: -62px}

#BSLFBMark, #BSLLineMark { position: absolute; display: block; }
#BSLFBMark { top: 17px; left: 25px; background-position: 0 -200px; width: 20px; height: 38px; }
#BSLLineMark { top: 11px; left: 9.5px; background-position: -50px -200px; width: 51px; height: 49px;}

.botPageLink > a:before, .botSnsLink a:before, .botPageLink > a:after, .botSnsLink a:after {
  content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; }

#BPLTelBT > a:before { background: #4eb7e7; z-index: -2; }
#BPLAccess a:before { background: #8eb266; z-index: -2; }
#BSLFB a:before, #BSLLine a:before { background: #999; z-index: -2; }

.botPageLink > a:after, .botSnsLink a:after {
  -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: left top; transform-origin: left top; }
#BPLTelBT > a:after, #BPLAccess a:after { background: #999; z-index: -1; }
#BSLFB a:after { background: #3c5998; z-index: -1; }
#BSLLine a:after { background: #00b833; z-index: -1; }
.botPageLink > a:hover:after, .botSnsLink a:hover:after { -webkit-transform: scaleX(1); transform: scaleX(1); }

/* Bottom Side Info */
#botSideInfo { width: 100%; margin-top: 30px; }

#BSIArea { float: left; min-height: 140px; width: 245px; position: relative; }

#BSIPay { float: right; width: 254px; }

.BSIST { color: #fff; background: #9e9890; font-size: 1.5rem; text-align: center; letter-spacing: .07em; margin: 0; padding: 5px 0 6px; }
#BSIArea .BSIST { text-indent: .05em; width: 106px; } #BSIPay .BSIST { width: 100%; }

#BSICity { font-size: 1.4rem; line-height: 1.5; letter-spacing: .08em; margin: 14px 0 0 3px;}

#BSIAMap { position: absolute; top: -10px; right: 0; background-position: -150px -150px; width: 118px; height: 140px; }

#BSICard {
  background: url(../common_im/footer-card.jpg) no-repeat 0 0; background-size: 254px 76px;
  width: 254px; height: 76px; margin: 18px auto 0; }

/* Bottom copyright */
#copyright {
  background: #9e9890; color: #f0f0f0; font-size: 1.4rem; text-align: center; letter-spacing: .06em;
  width: 100%; padding: 24px 0; display: block; }

@media (max-width: 1140px) { #BSIArea { width: 230px}}

/* Return Button
------------------------------------------- */
#returnBT { position: fixed; bottom: 10px; right: 10px; margin: 0; z-index: 999; }

#retTop { margin: 0; position: relative; }

#retTop:before, #retTop:after {
 content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; display: block;
 -webkit-border-radius: 50%; border-radius: 50%; z-index: -1; -webkit-transform-origin: center; transform-origin: center; }
#retTop:before { background: rgba(40,175,228,.85);-webkit-transform: scale(1); transform: scale(1); opacity: 1; }
#retTop:hover:before {-webkit-transform: scale(.5); transform: scale(.5); }
#retTop:after { background: rgba(250,130,14,1); -webkit-transform: scale(0); transform: scale(0); }
#retTop:hover:after { -webkit-transform: scale(1); transform: scale(1); }

#retTop a { color: #fff; width: 80px; height: 80px; margin: 0; text-indent: -9999px; position: relative; }

#retTop a:before {
 content: 'TOP'; position: absolute; bottom: 25px; left: 0; display: block; cursor: pointer; z-index: 1000;
 color: #fff; font-size: 12px; text-align: center; text-indent: .1em; letter-spacing: .2em; width: 100%; }
#retTop a:after {
 content: ''; position: absolute; top: 28px; left: 50%; cursor: pointer;
 width: 6px; height: 6px; border-top: 2px solid #fff; border-right: 2px solid #fff; margin-left: -4px;
 -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
#retTop a:hover:after { top: 22px; }

/* Bottom Blog Info
------------------------------------------- */
#CMSIndBlog { padding: 50px 0; margin-bottom: 4px; }

.BBLItem { width: calc(50% - 30px); height: 100%; display: block; cursor: pointer; position: relative; z-index: 1; overflow: hidden; }
.BBLItem:before, .BBLItem:after { content: ''; position: absolute; left: 0; display: block; }
.BBLItem:before { top: 40px; background: #bbd999; width: 100%; height: 1px; z-index: -1; }
.BBLItem:after {
  top: 0; width: 0; height: 0; border-style: solid; border-width: 10px 10px 0 0;
  border-color: #4eb7e7 transparent transparent transparent; display: block; }

.BBLHead { float: left; width: 42%; }
.BBLItem .BBLTime { color: #699933; font-size: 1.6rem; letter-spacing: .1em; padding-left: 20px; }
.BBLItem:hover .BBLTime { color: #4eb7e7; padding-left: 30px}

.BBLDate { font-size: 3.4rem; font-style: normal; }

.BBLDDia { font-size: 2rem; margin: 0 5px; vertical-align: .15em; }

.BBLTitle { color: #555; font-size: 1.6rem; font-weight: bold; line-height: 1.6; margin: 38px 0 0; }

.BBLImge { float: right; width: 50%; max-width: 300px; height: auto; overflow: hidden; position: relative; z-index: 1; }

@media (min-width: 1321px) { .BBLImge { max-height: 200px}}
@media (max-width: 1320px) { .BBLImge { max-height: 194px}}
@media (max-width: 1280px) { .BBLImge { max-height: 186px}}
@media (max-width: 1250px) { .BBLImge { max-height: 182px}}
@media (max-width: 1200px) { .BBLImge { max-height: 172px}}
@media (max-width: 1150px) { .BBLImge { max-height: 165px}}
@media (max-width: 1120px) { .BBLImge { max-height: 156px}}

.BBLImge:after {
  content: ''; position: absolute; top: 0; left: 0; opacity: 0;
  background: rgba(255,255,255,.2); width: 100%; height: 100%; display: block; }
.BBLItem:hover .BBLImge:after { opacity: 1}

.BBLNoImage { background-position: 0 -520px; }

.BBLItem img { -webkit-transform: scale(1); transform: scale(1);
 -webkit-transform-origin: center; transform-origin: center; }

.BBLItem:hover img { -webkit-transform: scale(1.2); transform: scale(1.2);}

/* -------------------------------------------
 Top page
------------------------------------------- */
/* Top Common */
#topTBGraphic:after, #topTBGraphic:before, .TTBGImage, #TFWoman:after, .TFFIM, .TVLGender {
  background: url(../top_im/top_im01.svg); background-size: 430px 160px; background-repeat: no-repeat; }

#TFReason:after, #TTCBody {
  background: url(../top_im/top_im02.png); background-size: 250px 496px; background-repeat: no-repeat; }

.topST { color: #4e4e4e; font-size: 3.4rem; text-align: center; text-indent: .1em; letter-spacing: .07em; margin: 0; }

#topFeatureST, #TFFST, #BBInfoST { color: #457e00}

.TSEN { font-size: 1.5rem; font-style: normal; margin-top: 8px; display: block; }
.edge .TSEN { margin-top: 8px}
#topFeatureST > .TSEN, #TFFST > .TSEN, #BBInfoST > .TSEN { color: #7faf42; }
#TTreatmentST .TSEN, #TVoiceST .TSEN, #staffST .TSEN, #facilitieST .TSEN, #mediaST .TSEN { color: #7e7e7e; }

.topContentsBN a { width: 360px; margin: 50px auto 0; position: relative; overflow: visible; }

#TTreatContents, #topFFList, #TVoiceList, #botBlogInfo { max-width: 1280px;  margin: 0 auto; padding: 0 50px; }

#TTreatCInner, #topFFLInner, #TVListInner, #BBInfoList { min-width: 1000px; max-width: 1280px; margin-top: 38px; }
#TVListInner { margin-top: 8px}

/* Top Head Area */
#topHead { height: 720px; }

#topEyecatch {
  position: absolute; top: 0; left: 0; background: url(../top_im/top_bg01.jpg) no-repeat 0 0;
  width: 100%; height: 720px; padding: 0; overflow: hidden; }

#topDirector, #doc_line { position: absolute; bottom: 0; right: 0; }
#topDirectorIM { z-index: 5}
#doc_line { width: 730px; height: 580px; z-index: 0}
#doc_line.done { opacity: 0 !important}

#doctorLine { fill-opacity: 0; transition: fill-opacity 0.5s}

#TEInner { max-width: 1600px; height: 720px; margin: 0 auto; position: relative; }

#TECopy {
  position: absolute; top: 300px; left: 50%;
  color: #8e694e; font-size: 3.4rem; line-height: 1.4; letter-spacing: .06em; margin: 0 0 0 -560px; }

@media (min-width: 2000px) { #topEyecatch { background-position: bottom center; background-size: 100%}}
@media (max-width: 1280px) { #topDirector { right: -8%}}
@media (min-width: 1281px) and (max-width: 1400px) { #topDirector { right: -4%}}
@media (max-width: 1280px) { #TECopy { left: 8%; margin: 0}}

#topInfoBox {  position: absolute; top: 500px; left: 80px; }

#topInfo { background: #fff; width: 448px; min-height: 50px; margin: 0; border: 1px solid #4eb7e7; }
#TISign { background: #4eb7e7; width: 49px; height: auto; display: block; position: relative; }
#TISign:before {
  content: ''; position: absolute; top: 15px; left: 19px;
  background-position: -80px -150px; width: 10px; height: 20px; display: block; }

#TIMessage {
  background: #fff; color: #17a2c9; font-size: 1.8rem; line-height: 1.4; text-align: center;
  letter-spacing: .05em; width: calc(100% - 80px); padding: 13px 15px 11px; display: block; }

#topTherapyTimes { width: 450px; height: 50px; margin: 10px 0 0; }

#topTherapyTimes a {
  color: #fff; font-size: 1.8rem; letter-spacing: .06em; text-align: center; padding: 14px 0 12px; position: relative; z-index: 1; }
.ie11 #topTherapyTimes a { padding: 18px 0 11px} .win.firefox #topTherapyTimes a { padding: 13px 0 15px}

#topTherapyTimes a:before, #topTherapyTimes a:after {
  content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; }
#topTherapyTimes a:before { background: #72b51e; z-index: -2; }
#topTherapyTimes a:after {
  background: #4eb7e7; z-index: -1; -webkit-transform: scaleX(0); transform: scaleX(0);
  -webkit-transform-origin: left top; transform-origin: left top;}
#topTherapyTimes a:hover:after { -webkit-transform: scaleX(1); transform: scaleX(1);}

/* Top News Area */
#topNews { max-width: 1800px; margin: 5px auto 0; padding: 70px 0; position: relative; }

#TNewsST {
  position: absolute; top: 70px; left: 80px;
  color: #4e4e4e;  font-size: 3.6rem; font-weight: normal; letter-spacing: .06em; margin: 0; }
.TNewsSM { font-size: 3rem; padding: 0 6px}

#TNewsJP { color: #7e7e7e; font-size: 1.5rem; margin-top: 3px; display: block; }
.win #TNewsJP { margin-top: 8px}

#TNList { width: calc(100% - 390px); margin: 0 0 0 390px; padding: 0; }

#TNList > li { font-size: 1.5rem; letter-spacing: .06em; z-index: 1; position: relative; }
#TNList > li:nth-of-type(2) { margin-top: 5px; }
#TNList > li a { color: #444; background: #fff; padding: 26px 0 25px 30px; position: relative; }

.TNDate { font-size: 1.4rem; font-style: normal; margin-bottom: 10px; display: block; }
#TNList a .TNDate { color: #a29072; }

#TNList > li:before {
  content: ''; position: absolute; top: 0; left: 0; z-index: 5;
  width: 0; height: 0; border-style: solid; border-width: 10px 10px 0 0;
  border-color: #4eb7e7 transparent transparent transparent; display: block; }

#TNList > li:hover { -webkit-transform: translate3d(15px,0,0); transform: translate3d(15px,0,0); }

#TNLinkBT { position: absolute; bottom: 70px; left: 80px; }

#TNLinkBT a { font-size: 1.5rem; width: 180px; padding: 15px 0; position: relative; overflow: visible; }
.win.firefox #TNLinkBT a { padding: 14px 0 16px}

/* Top Feature Area */
#TFMainCopy { color: #555; font-size: 1.8rem; font-weight: bold; line-height: 1.8; text-align: center; letter-spacing: .06em; margin: 2em 0 0; }

.topTBalanceST { color: #17a2c9; font-size: 2.8rem; text-align: center; letter-spacing: .06em; margin: 60px 0 0; }

#topTBGraphic { width: 900px; margin: 30px auto 0; position: relative; }

.TTBGItem { width: 250px; position: relative; }

#topTBGraphic:after, #topTBGraphic:before {
  content: ''; position: absolute; top: 50%;
  background-position: -140px 0; width: 30px; height: 30px; margin-top: -15px; display: block; }
#topTBGraphic:after { left: 273px; } #topTBGraphic:before { right: 273px; }

.TTBIST { position: absolute; top: 0; left: 0; color: #fff; font-size: 2.6rem; margin: 0; padding: 17px 0 0 17px; z-index: 10; }

.TTBIST:before {
  content: ''; position: absolute; top: 0; left: 0;
  width: 60px; height: 60px; -webkit-border-radius: 50%; border-radius: 50%; z-index: -1; }

.TTBGCircle, .TBBICircle {
  width: 220px; height: 220px; margin: 0 auto; -webkit-border-radius: 50%; border-radius: 50%;
  display: block; position: relative; z-index: 1; }

#TTBI01 .TTBIST:before, #TTBI01 .TTBGCircle, #TBBI01 .TTBIST:before, #TBBI01 .TTBGCircle { background: #69cce2; }
#TTBI02 .TTBIST:before, #TTBI02 .TTBGCircle, #TBBI02 .TTBIST:before, #TBBI02 .TTBGCircle { background: #f78aa5; }
#TTBI03 .TTBIST:before, #TTBI03 .TTBGCircle, #TBBI03 .TTBIST:before, #TBBI03 .TTBGCircle { background: #99c462; }

.TTBGImage { content: ''; position: absolute; top: 50%; left: 50%; display: block; }

#TTBI01 .TTBGImage, #TBBI01 .TTBGImage { background-position: 0 0; width: 42px; height: 152px; margin: -74px 0 0 -21px; }
#TTBI02 .TTBGImage, #TBBI02 .TTBGImage { background-position: -60px 0; width: 56px; height: 52px; margin: -26px 0 0 -26px; }
#TTBI03 .TTBGImage, #TBBI03 .TTBGImage { background-position: -60px -80px; width: 66px; height: 54px; margin: -31px 0 0 -27px; }

.TTBGCap, .TBBCap { font-size: 1.6rem; text-align: center; letter-spacing: .06em; margin: 15px 0 0; }

#TFSecond { width: 920px; height: 450px; margin: 60px auto 0; position: relative; }

#TFReason, #TFWoman { position: absolute; top: 0; width: 480px; height: 450px; -webkit-border-radius: 50%; border-radius: 50%; }
#TFReason { left: 0; background: rgba(233,247,229,.6); }
#TFWoman { right: 0; background: rgba(250,240,231,.6); }

#TFReason:after, #TFWoman:after { content: ''; left: 50%; position: absolute; display: block; }
#TFReason:after { top: 36px; background-position: 0 -460px; width: 150px; height: 36px; margin-left: -75px; }
#TFWoman:after { top: 10px; background-position: -290px -10px; width: 140px; height: 140px; margin-left: -70px; }

.TFSecST { color: #17a2c9; font-size: 2.2rem; text-align: center; text-indent: .07em; letter-spacing: .07em; }

#TFReason .TFSecST { margin-top: 108px; }
#TFWoman .TFSecST { margin-top: 182px; }

#TFRSix { color: #3eae42; font-size: 3rem; margin: 0 2px; vertical-align: -.075em; }

#TFRList { margin: 26px 0 0 118px; padding: 0;}

#TFRList li { color: #4e4e4e; font-size: 1.9rem; letter-spacing: .05em; margin: 16px 0 0}

.TFRNum { color: #3eae42; font-size: 2.1rem; font-style: normal; letter-spacing: 0; vertical-align: -.035em; margin-right: 6px; }
.edge .TFRNum { vertical-align: -.05em}

#TFWGuide { font-size: 1.6rem; text-align: center; line-height: 1.8; letter-spacing: .06em; margin: 28px 0 0; }

/* Top Treatment Area */
#TTreatCInner { background: #fff; min-height: 460px; padding: 40px 0 36px; }

#topSymptomsList { margin-left: calc(50% - 140px); padding-right: 70px; }
#topSymptomsList dt {
  color: #17a2c9; font-size: 1.8rem; font-weight: bold; letter-spacing: .06em; margin: 28px 0 0; padding-left: 22px; position: relative; }
#topSymptomsList dt:first-of-type { margin: 0; }
#topSymptomsList dd { font-size: 1.5rem; line-height: 1.8; letter-spacing: .07em; margin: 8px 0 0; padding-left: 22px; }

#topSymptomsList dt:before {
 content: ''; position: absolute; top: 3px; left: 0;
 width: 11px; height: 4px; border-left: 3px solid #4eae3e; border-bottom: 3px solid #4eae3e;
 -webkit-transform: rotate(-48deg); transform: rotate(-48deg); }
.win #topSymptomsList dt:before { top: 4px} .win.ie11 #topSymptomsList dt:before { top: 1px}

#TTCBody {
  position: absolute; top: calc(50% - 222px); right: calc(50% + 200px);
  background-position: 0 0; width: 244px; height: 445px; }

@media (max-width: 1140px) { #topSymptomsList { padding-right: 50px}}
@media (min-width: 1280px) { #TTCBody { right: calc(50% + 230px)}}

/* Top Flow and Fee Area */
.TFFLItem { width: 28%; max-width: 350px; }

.TFFLImage { background: #72b51e; width: 100%; height: 200px; position: relative;}

.TFFST { color: #fff; font-size: 1.8rem; text-align: center; letter-spacing: .1em; margin: 0; padding-top: 116px; }

.TFFIM { position: absolute; top: 40%; left: 50%; }
#TFIM01 { background-position: -139px -49px; width: 36px; height: 36px; margin: -18px 0 0 -18px; }
#TFIM02 { background-position: -140px -100px; width: 42px; height: 46px; margin: -24px 0 0 -22px; }
#TFIM03 { background-position: -200px -1px; width: 86px; height: 30px; margin: -13px 0 0 -43px; }

.TFFLCopy { font-size: 1.4rem; line-height: 1.6; letter-spacing: .05em; margin: 12px 0 0; padding-left: 2px; }

@media (min-width: 1240px) { .TFFLCopy { font-size: 1.5rem; padding-left: 6px} .ie11 .TFFLCopy { padding: 0}}

/* Top Voice Area */
#TVListInner:after { content: '';  width: calc(30% + 15px); display: block; }

.TVLItem {
  background: #fff; width: calc(30% - 45px); min-width: 260px; margin: 30px 0 0; padding: 30px 30px 40px;
  border: 1px solid #c2e7f5; text-decoration: none; display: block; cursor: pointer; position: relative; z-index: 1; }
.edge .TVLItem { padding-right: 20px}

.TVLItem:before, .TVLItem:after {
  content: ''; position: absolute; top: 0; left: 0;
  width: 100%; height: 100%; display: block; }
.TVLItem:before { background: #fff; z-index: -2; }
.TVLItem:after {
  background: #f0ffe7; z-index: -1;-webkit-transform: scaleX(0); transform: scaleX(0);
  -webkit-transform-origin: left top; transform-origin: left top; }
.TVLItem:hover:after {-webkit-transform: scaleX(1); transform: scaleX(1); }

.TVLItem .TVLHead { color: #333; font-size: 1.6rem; letter-spacing: .05em; margin: 0; padding: 3px 0 0 75px; }

.TVLItem .TVLSymptoms { color: #b53e5e; margin-top: 10px; display: block; }

.TVLItem .TVLVoice { color: #333; font-size: 1.4rem; line-height: 1.6; letter-spacing: .05em; margin: 20px 0 0; }
.TVLGender { position: absolute; top: 30px; left: 30px; width: 50px; height: 50px; }

.TVLGFemale { background-position: -200px -40px; }
.TVLGMale { background-position: -200px -100px; }

/* -------------------------------------------
 About
------------------------------------------- */
#improveIM:before, #PWSBefore:before, #PWSAfter:before, .bookBuy a:before {
  background: url(../about/images/about.png); background-repeat: no-repeat; background-size: 550px 158px; }

/* About Head Area */
#aboutEyecatch { background: url(../about/images/eyecatch.jpg) no-repeat left top; height: 380px; }

@media (min-width: 2000px) { #aboutEyecatch { background-position: center bottom; background-size: 100%}}

.featureSec { position: relative; }

.featureHead { width: calc(50% - 60px); }

/* Feature Area */
.featureST { width: 380px; height: 380px; margin: 0 auto; position: relative; }

.FSCircle {
  content: ''; position: absolute; top: 0; left: 0; display: block; z-index: -1;
  width: 376px; height: 376px; border: 2px solid #e5f0d9; -webkit-border-radius: 50%; border-radius: 50%; }

.FSTit {
  line-height: 1.4; color: #457e00; font-size: 3.4rem; letter-spacing: .05em; margin: 0 auto; display: block;
  -webkit-font-feature-settings: 'pkna'; font-feature-settings: 'pkna'; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;font-feature-settings: "palt"; }
.edge .FSTit, .ie11 .FSTit, .win.firefox .FSTit { position: absolute; top: 0; left: 50%; margin-left: -1.2em}
.ie11 .FSTit { margin-left: -1.3em}

#FST01 .FSTit { text-align: right; padding-top: 65px; }
#FST02 .FSTit { text-align: left; padding-top: 120px; }
#FST03 .FSTit { text-align: center; padding-top: 82px; }
.edge #FST02 .FSTit, .ie11 #FST02 .FSTit, .win.firefox #FST02 .FSTit { margin-left: -2em}
.edge #FST03 .FSTit, .win.firefox #FST03 .FSTit { padding-top: 90px} .ie11 #FST03 .FSTit { padding-top: 88px}
.mac.firefox .FSTit { width: 2.8em} .mac.firefox #FST02 .FSTit {width: 4.25em}

.FSNum { position: absolute; top: 30px; left: 0; color: #72a732; font-size: 1.8rem; letter-spacing: .1em; }
.FSNum > b { font-size: 3.2rem; vertical-align: -.05em; letter-spacing: 0; }

.featureCopy { font-size: 1.6rem; line-height: 1.8; letter-spacing: .06em; margin: 0; }
.FCopySec { margin-top: 1em; display: block; }

.featureIM { width: 50%; max-width: 600px; height: auto; }
#feature01 .featureIM { right: 0; }

@media (max-width: 1280px) { .featureCopy { margin-top: -1.5em}}

#nextFeature01 { float: right; width: calc(100% - 690px); }

#nextSTFeature01 { color: #17a2c9; font-size: 2.8rem; line-height: 1.4; letter-spacing: .07em; margin: 0; }

.NCopy01, .NCopy02 { font-size: 1.6rem; line-height: 2; letter-spacing: .06em; margin: 36px 0 0; }
.NCopy02 { margin: 0 0 30px; }
#improveIM { float: left; width: 620px; height: 400px; position: relative; }

#improveIM:before {
  content: ''; position: absolute; top: 50%; left: 50%; margin: -16px 0 0 -23px;
  background-position: -500px -50px; width: 46px; height: 37px; display: block; z-index: 5; }

#distortedBody, #adjustedBody {
  position: absolute; top: 60px; width: 270px; height: 340px; z-index: 1;
  background: url(../about/images/feature01.png) no-repeat 0 0; background-size: 550px 340px; }
#distortedBody { left: 0; }
#adjustedBody { right: 0; background-position: -280px 0; }

.IIMCaption {
  position: absolute; top: -60px; left: 0; color: #876c54; font-size: 1.6rem;
  text-align: center; width: 100%; padding: 6px 0 7px; border: 2px solid #d4cac1; }
.win .IIMCaption { font-weight: 500}
.win #adjustedBody .IIMCaption { letter-spacing: .15em}

@media (max-width: 1220px) { .featureIM { margin-top: 20px}}
@media (max-width: 1180px) {
  .featureIM { margin-top: 30px} #nextFeature01 { width: calc(100% - 680px)} .NCopy01 { margin-top: 20px}}
@media (max-width: 1130px) { .featureIM { margin-top: 40px}}

#nextFeature02 { padding-bottom: 40px; }

#TBBalanceGuide { width: calc(100% - 660px); }

#TBBThinking { width: 560px; }

#TBBTST { color: #17a2c9; font-size: 2.5rem; text-align: center; letter-spacing: .08em; margin: 0; }

#TBBImage { width: 100%; height: 538px; margin-top: 36px; position: relative; }
#TBBImage:before {
  content: ''; position: absolute; top: 60px; left: 50%; width: 284px; height: 284px; margin-left: -142px;
  border: 8px solid #ffd8ab; -webkit-border-radius: 50%; border-radius: 50%; z-index: -1; }

.TBBItem { position: absolute; width: 250px; }
#TBBI01 { top: 0; left: -10px; }
#TBBI02 { top: 0; right: -10px; }
#TBBI03 { top: 280px; left: 50%; margin-left: -110px; }

#TBBI01 .TBBCap, #TBBI02 .TBBCap { background: #fff; padding: 2px 0 4px; }

#TBBCatch { text-align: center;border-top: 2px solid #d5e6c3; border-bottom: 2px solid #d5e6c3; }

#TBBCatchCopy { color: #457e00; font-size: 2.2rem; line-height: 1.5; letter-spacing: .08em; text-align: left; margin: .5em 0 .6em; display: inline-block;}

@media (min-width: 1370px) { #TBBThinking { margin-top: -10px}}
@media (max-width: 1266px) { .NCopy02 { margin-bottom: 20px}}
@media (max-width: 1220px) { #TBBCatchCopy { font-size: 2.1rem; letter-spacing: .05em}}
@media (max-width: 1180px) { #TBBalanceGuide { width: calc(100% - 640px)} .NCopy02 { margin-bottom: 1em} #TBBCatchCopy { font-size: 2rem}}
@media (max-width: 1150px) { #TBBalanceGuide { width: calc(100% - 620px)} #TBBCatchCopy { letter-spacing: .035em}}
@media (max-width: 1125px) { #TBBalanceGuide { margin-top: -40px} #TBBCatchCopy { letter-spacing: 0}}
@media (max-width: 1110px) { #TBBalanceGuide { margin-top: -55px}}
@media (max-width: 1100px) { #TBBalanceGuide { margin-top: -80px}}

#feature03 { margin-top: 50px; }

#pregnantWomanSupport { background: #faf5f0; min-height: 140px; margin-top: 60px; padding: 40px 0; position: relative; }
#pregnantWomanSupport:after {
  content: ''; position: absolute; top: 0; right: 0; width: 0; height: 0;
  border-style: solid; border-width: 0 40px 40px 0; border-color: transparent #ffffff transparent transparent; }

#PWSST {
  position: absolute; top: -.5em; left: 0; width: 100%;
  color: #17a2c9; font-size: 2.5rem; text-align: center; letter-spacing: .1em; margin: 0; }

#PWSInner { padding: 0 70px; }
#PWSBefore, #PWSAfter { width: calc(47% - 170px); padding-left: 170px; position: relative; }

#PWSBefore:before, #PWSAfter:before {  content: ''; position: absolute; top: 0; left: 0; width: 140px; height: 140px; display: block; }
#PWSBefore:before { background-position: -160px 0; }
#PWSAfter:before { background-position: -320px 0; }

.PWSIST {
  color: #fff; background: #57bbd9; font-size: 1.8rem; text-align: center; letter-spacing: .2em;
  margin: 8px 0 0; padding: 4px 9px 6px 12px; display: inline-block; }

.PWSCopy { font-size: 1.6rem; line-height: 1.8; letter-spacing: .06em; margin: 16px 0 0; }

@media (min-width: 1321px) { .ie11 #PWSInner { padding: 0 60px}}
@media (max-width: 1320px) { #PWSInner { padding: 0 50px}}
@media (max-width: 1280px) { #PWSBefore, #PWSAfter { width: calc(48% - 165px); padding-left: 165px}}
@media (max-width: 1250px) { #PWSInner { padding: 0 40px} #PWSBefore, #PWSAfter { width: calc(48.5% - 165px)}}
@media (max-width: 1215px) { .PWSCopy { font-size: 1.5rem}}
@media (max-width: 1175px) { #PWSInner { padding: 0 30px}}
@media (max-width: 1155px) { .PWSIST { margin-top: 0}}

/* Staff Area */
#directorInfo, #facilitieContainer { margin-top: 36px; padding: 30px; }
#directorInfo, .staffItem, .staffAll, #facilitieContainer { background: #fff; }

#directorPhoto { width: 290px; height: 290px; }

#directorName {
  font-size: 2rem; letter-spacing: .1em; margin: 0; white-space: nowrap; padding: 0 6%;
  -webkit-font-feature-settings: 'pkna'; font-feature-settings: 'pkna'; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;font-feature-settings: "palt"; }
.ie11 #directorName { letter-spacing: .05em} .win.firefox #directorName { width: 1em}
.directorTitle {
  color: #897662; font-size: 1.6rem; font-style: normal; letter-spacing: .2em;
  margin-bottom: 12px; padding: 6px 4px 2px; border: 1px solid #d2c2b2; display: inline-block; }

.kanaName { font-size: 1.3rem; }

#directorProfile { width: calc(100% - 400px - 6%); }

.DProST { color: #777; font-size: 1.8rem; letter-spacing: .1em; margin: 0; padding-bottom: 3px; border-bottom: 2px solid #ccc; display: inline-block;}

.DProCopy { font-size: 1.5rem; line-height: 1.8; letter-spacing: .06em; margin: 1em 0 0; }

@media (max-width: 1230px) { .DProCopy { font-size: 1.4rem}}
@media (max-width: 1220px) { #directorName { padding: 0 3%} #directorProfile { width: calc(100% - 400px - 3%)}}
@media (max-width: 1185px) { #directorName { padding: 0 1.8%} #directorProfile { width: calc(100% - 400px - 1.8%)}}

.staffContainer { margin-top: 50px; }

.staffItem { width: calc(25.4% - 50px); padding: 30px; } .staffAll { width: calc(37.28% - 50px); padding: 30px; }
.ie11 .staffItem, .ie11 .staffAll { box-sizing: content-box}

.staffData { margin: 10px 0 0; letter-spacing: .06em; }
.staffTitle { color: #897662; font-size: 1.5rem; margin: 0; }
.staffName { font-size: 1.6rem; margin: .5em 0 0; }

/* Facilities & Equipment Area */
.aboutAltSec { padding: 50px 0 60px; border-top: 2px solid #fff; }

.facilitieItem { width: calc(33.33% - 20px); }
.facilitieItem:nth-of-type(1), .facilitieItem:nth-of-type(2), .facilitieItem:nth-of-type(3) { padding-bottom: 22px; }

.FEIcap { color: #897662; font-size: 1.5rem; letter-spacing: .1em; margin-top: 10px; }

#shopKirara { background: #fff; margin-top: 30px; padding: 30px; }

#kiraraIM { width: 58%; max-width: 680px; }

#kiraraInfo { width: 42%; position: relative; }
#loraraLogo, #kiraraLink {  }
#loraraLogo { width: 350px; padding-left: 30px; margin: 10px auto 0; }
#kiraraLink { position: absolute; bottom: -2px; left: 50%; font-size: 1.6rem; width: 350px; margin: 0 0 0 -162px; }
.kiraraURL { font-size: 1.5rem; padding-top: 6px; display: block; }

@media (max-width: 1150px) { #loraraLogo { margin-top: 0}}
@media (min-width: 1240px) { #kiraraLink { bottom: 10px}}
@media (min-width: 1320px) { #kiraraLink { bottom: 20px}}

/* Book & Media Area */
.bookItem01, .bookItem02, .videoBox { margin-top: 36px; padding: 30px 50px;}
.bookItem01 { background: #fff; width: calc(50% - 125px); }
.bookItem02 { background: #fff; width: calc(42% - 125px); }
.videoBox { background: #666; width: calc(58% - 125px); }
.ie11 .bookItem01, .ie11 .bookItem02, .ie11 .videoBox {box-sizing: content-box}

.BIBox { width: 100%; }

.BIData { width: calc(100% - 200px); margin: 0; }

.BIData dt, .videoData dt { color: #897662; font-size: 2rem; letter-spacing: .06em; margin: 0; }
.BITitLeft { margin-left: -.5em; }
.BISM01, .BISM02 { font-size: 1.5rem; margin-top: 5px; display: block; } .BISM02 { margin: 0 0 5px; }
.BIGuide, .BIGuide02, .publication { font-size: 1.5rem; line-height: 1.5; letter-spacing: .05em; margin: 20px 0 0; }
.BIGuide02 { margin-top: 40px; }
.publication { font-size: 1.4rem; margin-top: 15px; }
.bookBuy { font-size: 1.4rem; letter-spacing: .05em; margin: 16px 0 0; }

.bookBuy a {
  background: #ffd272; color: #333; text-decoration: none; padding: 5px 9px 6px 34px; position: relative;
  display: inline-block; cursor: pointer; overflow: hidden; -webkit-border-radius: 5px; border-radius: 5px; }
.bookBuy a:before {
  content: ''; position: absolute; top: 4px; left: 8px;
  background-position: -500px -100px; width: 20px; height: 16px; display: block; }
.bookBuy a:hover { background: #9ee2f5; }

.BIImage { width: 160px; }
.BIImage02 { background: #ddd; width: 104px; height: 187px; padding: 38px 28px 0; }
.BIImage03 { background: #ddd; width: 95px; height: 187px; padding: 38px 32px 0; }
.ie11 .BIImage02, .ie11 .BIImage03 { box-sizing: content-box}

.videoMedia { width: 340px; height: 250px; }
.videoData { width: calc(100% - 380px); margin: 0;}

.videoData dt, .videoData > .BIGuide, .videoData > .publication { color: #f2f2f2; }
.videoData > .BIGuide { margin-top: 70px; } .videoData > .publication { margin-top: 30px; }

@media (max-width: 1230px) {
  .bookItem01, .bookItem02, .videoBox { padding: 30px 40px} .BIGuide02 { margin-top: 30px}
  .bookItem01 { width: calc(50% - 105px)} .bookItem02 { width: calc(42% - 105px)}
  .videoBox { width: calc(58% - 105px)} .videoData { width: calc(100% - 370px)}}

@media (max-width: 1180px) {
  .bookItem01, .bookItem02, .videoBox { padding: 30px}
  .bookItem01 { width: calc(50% - 85px)} .bookItem02 { width: calc(42% - 85px)}
  .videoBox { width: calc(58% - 85px)}}

@media (max-width: 1140px) { .videoData { width: calc(100% - 360px)}}

@media (max-width: 1125px) {
  .BIData { width: calc(100% - 190px)}
  .videoBox { padding: 30px 20px} .videoData dt { font-size: 1.9rem; letter-spacing: 0}
  .videoData > .BIGuide { margin-top: 50px}}

/* -------------------------------------------
 Treatments
------------------------------------------- */
.SLImage, .MBLImage {
  background: url(../treatments/images/treatments01.png); background-repeat: no-repeat; background-size: 224px 1270px; }

/* Treatments Head Area */
#treatmentsEyecatch { background: url(../treatments/images/eyecatch.jpg) no-repeat center top; height: 380px; }

@media (min-width: 2000px) { #treatmentsEyecatch { background-position: center bottom; background-size: 100%}}

/* Treatments01 Area */
#treatments01 { margin-top: 5px; } #treatInner01 { position: relative; }

#treatInner01:after {
  content: ''; position: absolute; top: 80px; right: 0; display: block;
  background: url(../treatments/images/hands.png); background-size: 280px 200px; width: 280px; height: 200px; }

.treatTitle { color: #494949; font-size: 3.4rem; letter-spacing: .05em; margin: 0 0 0 50px; padding: 80px 0 0 100px; position: relative; z-index: 1; }
.TRCircle {
  content: ''; position: absolute; top: 0; left: 0; z-index: -1;
  width: 90px; height: 90px; border: 2px solid #ffd9c0; border-radius: 50%; display: block; }

@media (max-width: 1300px) { #treatments03 .treatTitle { margin-left: 0}}
@media (max-width: 1175px) { #treatInner03 .treatTitle { padding-left: 80px}}
@media (max-width: 1140px) { #treatInner03 .treatTitle { font-size: 3.3rem; letter-spacing: .03em}}

.treatEN { position: absolute; top: 23px; left: 40px; color: #ffa759; font-size: 1.8rem; font-style: normal; letter-spacing: .06em; display: block; }
.treatNum { font-size: 3.2rem; font-weight: 400; vertical-align: -.07em; letter-spacing: 0; }
.treatST { position: absolute; top: 33px; left: 212px; font-size: 1.8rem; letter-spacing: .075em; display: block; }

#treat01Copy { color: #4e4e4e; font-size: 1.8rem; font-weight: bold; line-height: 1.8; margin: 50px 0 0 50px; }

.sympItem { background: #fff; width: calc(50% - 105px); margin-top: 50px; padding: 40px; position: relative; }

.sympST { color: #4e4e4e; font-size: 1.8rem; letter-spacing: .1em; margin: 0 0 0 47.5%; }
.sympList { font-size: 1.5rem; letter-spacing: .06em; margin: 20px 0 0 47.5%; padding: 0; }
.sympList.SL002 { margin-top: 40px; }
.sympList li { font-size: 1.5rem; margin: .6em 0 0; }

.SLImage { position: absolute; top: 50%; left: 38%; width: 104px; height: 240px; margin: -120px 0 0 -104px; }

#SLIM01 { background-position: 0 0; }
#SLIM02 { background-position: -120px 0; }
#SLIM03 { background-position: 0 -250px; }
#SLIM04 { background-position: -120px -250px; width: 70px; height: 230px; margin: -115px 0 0 -87px; }

.okSign {
  position: absolute; top: -10px; right: -10px; background: #87b549; z-index: 5;
  width: 80px; height: 80px; margin: 0; -webkit-border-radius: 50%; border-radius: 50%; }

.okCopy {
  color: #fff; font-size: 2rem; font-style: normal; text-align: center; text-indent: .1em;
  letter-spacing: .1em; margin-top: 30px; display: block; }
.okRota { -webkit-transform: rotate(15deg); transform: rotate(15deg); display: inline-block;}

@media (min-width: 1400px) { .sympST, .sympList { margin-left: 50%} .SLImage { left: 36%;}}

#treatBodyBalance, #treatPleaseConsult { background: #fff; margin-top: 50px; padding: 50px; }

.treatBBST { color: #0092b9; font-size: 3rem; text-align: center; letter-spacing: .06em; margin: 0; }

.treatBBCopy { font-size: 1.6rem; line-height: 1.8; letter-spacing: .06em; max-width: 900px; margin: 1em auto 0; }
.treatBBCopy:first-of-type { margin-top: 30px;}

.muscleBalanceST { color: #4e4e4e; font-size: 2rem; text-align: center; margin: 25px 0 0; }

#muscleBalanceList { max-width: 800px; margin: 25px auto 0; }

.MBLItem { width: 224px; height: 280px; }

.MBLImage { width: 200px; height: 250px; margin: 0 auto; }
#MBL01 { background-position: 0 -500px; }
#MBL02 { background-position: 0 -760px; }
#MBL03 { background-position: 0 -1020px; }

.MBLcap { font-size: 1.6rem; text-align: center; letter-spacing: .05em; text-indent: .05em; margin: 12px 0 0; }

#treatPCLInner { width: 900px; margin: 0 auto; }

.treatPCList { width: calc(50% - 25px); margin: 25px auto 0; padding: 0; }

.treatPCList > li, #treatPleaseRefrain > li {
  color: #4e4e4e; font-size: 1.8rem; font-weight: bold; letter-spacing: .05em;
  margin: 0; padding: 10px 0 10px 28px; position: relative; }

.treatPCList > li:before, .treatPCList > li:after, #treatPleaseRefrain > li:before, #treatPleaseRefrain > li:after {
  content: ''; position: absolute; top: 8px; left: 0; display: block; }
.ie11 .treatPCList > li:before, .ie11 .treatPCList > li:after { top: 5px}
.ie11 #treatPleaseRefrain > li:before, .ie11 #treatPleaseRefrain > li:after { top: 4px}
.win.firefox .treatPCList > li:before, .win.firefox .treatPCList > li:after { top: 10px}

.treatPCList > li:before {
  background: #69c04e; width: 20px; height: 20px; -webkit-border-radius: 4px; border-radius: 4px; }
.treatPCList > li:after {
  width: 13px; height: 5px; margin: 5px 0 0 2px; border-left: 3px solid #fff; border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.edge .treatPCList > li:before, .edge .treatPCList > li:after { top: 10px}
.edge #treatPleaseRefrain > li:before, .edge #treatPleaseRefrain > li:after { top: 9px}

#treatments02 { padding-bottom: 60px; } #treatInner02 { padding-bottom: 50px; }
#treatments02 .treatTitle { padding-bottom: 10px; }

.treatWrapp { width: calc(100% - 46% - 60px); }

.TWCopy, .TWCopy02 { font-size: 1.6rem; line-height: 1.8; letter-spacing: .06em; margin: 30px 0 0; }
.TWCopy02 { margin-top: 1em; }

.TWImage { width: 46%; max-width: 550px; }

@media (min-width: 1260px) { #treatments02 .treatTitle { padding-bottom: 20px; }}
@media (max-width: 1200px) { .TWCopy { margin-top: 20px} }
@media (max-width: 1160px) { #treatments02 .treatTitle { padding-bottom: 20px} .TWImage { margin-top: 20px}}
@media (max-width: 1120px) { .TWCopy { margin-top: 1em} .TWImage { margin-top: 30px} }

#painlessTherapyImage { height: 300px; }
.PTIImage img, #PTIDraw img { width: auto !important; height: 300px !important; }

@media (max-width: 1210px) { #treatInner02 { padding-bottom: 40px; }}
@media (max-width: 1240px) {
  #painlessTherapyImage { height: 280px} .PTIImage img, #PTIDraw img { width: auto !important; height: 280px !important}}
@media (max-width: 1160px) {
  #painlessTherapyImage { height: 270px} .PTIImage img, #PTIDraw img { width: auto !important; height: 270px !important}}
@media (max-width: 1130px) {
  #painlessTherapyImage { height: 260px} .PTIImage img, #PTIDraw img { width: auto !important; height: 260px !important}}

#treatOurPromise { margin-top: 70px; border: 3px solid #8ed7ee; position: relative; }

#promiseST { position: absolute; top: -.6em; left: 0; width: 100%; z-index: 1; }

#promiseST:before {
  content: ''; position: absolute; top: 10px; left: 50%;
  background: #fff; width: 8em; height: 15px; margin-left: -4.05em; z-index: -1; }

#TOPList { width: 676px; padding: 10px 0 30px; }

#treatInner03 { min-height: 880px; position: relative; }
#treatPleaseRefrain { margin: 40px 0 0 50px; padding: 0 0 15px 0; }

#treatPleaseRefrain > li:before {
  background: #f77e7e; width: 20px; height: 20px; -webkit-border-radius: 4px; border-radius: 4px; }
#treatPleaseRefrain > li:after {
  content: 'X'; color: #fff; margin: .12em 0 0 .15em; -webkit-transform: scaleX(1.15); transform: scaleX(1.15); }
.edge #treatPleaseRefrain > li:after { margin: 0 0 0 .2em}
.ie11 #treatPleaseRefrain > li:after { margin: 0 0 0 .2em}
.win.chrome #treatPleaseRefrain > li:after { margin: .1em 0 0 .2em}
.win.firefox #treatPleaseRefrain > li:after { margin: 0 0 0 .18em}

#treatPleaseRefrain > li:last-of-type { padding-left: 0; }
#treatPleaseRefrain > li:last-of-type:before, #treatPleaseRefrain > li:last-of-type:after { display: none; }

#paperAirplane { position: absolute; bottom: 60px; right: 0; width: 46%; max-width: 550px; }

@media (max-width: 1245px) { #paperAirplane { bottom: 110px}}
@media (max-width: 1200px) { #paperAirplane { bottom: 160px}}
@media (max-width: 1160px) { #paperAirplane { bottom: 180px}}
@media (max-width: 1151px) { #paperAirplane { bottom: 200px}}

@media (min-width: 1280px) { #paperAirplane { margin-right: 2%; width: 42%}}
@media (max-width: 1300px) { #treatPleaseRefrain { margin-left: 40px}}
@media (min-width: 1320px) { #paperAirplane { margin-right: 1%}}
@media (min-width: 1380px) { #paperAirplane { margin-right: 1.5%; width: 40%}}

/* -------------------------------------------
 Flow & Fee
------------------------------------------- */
#flowInner:before, #FSIM01, #FSTelNum > i, .FFIcon:after, .reserveIcon:after, #flowFacilitie:after, #reserveTopIcon,
.reserveST:after, #RGTelNum:before, #feeIcon {
  background: url(../flow-fee/images/flow.png); background-repeat: no-repeat; background-size: 460px 470px; }

.flowTitle { font-size: 3.4rem; letter-spacing: .06em; height: 92px; margin: 0 0 0 50px; padding: 58px 0 0 176px; position: relative; }
.FTCircle {
  content: ''; position: absolute; top: 0; left: 0;
  width: 150px; height: 150px; border: 2px solid #dcc4f5; -webkit-border-radius: 50%; border-radius: 50%; }

.flowTEN {
  position: absolute; top: 62px; left: 3px;
  color: #c99ef5; font-size: 2.5rem; font-style: normal; text-align: center; width: 150px; }

/* Flow Head Area */
#flowEyecatch { background: url(../flow-fee/images/eyecatch.jpg) no-repeat center top; height: 380px; }

@media (min-width: 2000px) { #flowEyecatch { background-position: center bottom; background-size: 100%}}

/* Flow Contents */
#flowInner, #reserveInner, #feeInner { position: relative; }

#flowInner:before {
  content: ''; position: absolute; top: 118px; right: 0;
  background-position: 0 0; width: 404px; height: 34px; display: block; }

#flowContents, #flowMerit { margin-top: 40px; padding-left: 125px; }

.flowStep { padding-bottom: 40px; position: relative; }
.flowStep:last-of-type { padding: 0; }

.FSGuide { width: calc(100% - 510px); padding-left: 70px; }

.FStepST { color: #494949; font-size: 2.5rem; letter-spacing: .07em; margin: 0; padding-top: 16px; position: relative; }

.FSNCircle {
  content: ''; position: absolute; top: 0; left: -70px; background: #ccb0e9; width: 60px; height: 60px;
  display: block; -webkit-border-radius: 50%; border-radius: 50%; }
.FSNCircle:after {
  content: 'Flow'; position: absolute; top: 21px; left: 1px;
  color: #fff; font-size: 1.8rem; font-style: normal; text-align: center; letter-spacing: .05em; width: 59px; }

.FStepNum {
  color: #c5a5e9; font-size: 3rem; font-style: normal; letter-spacing: .035em; margin-right: 6px; vertical-align: -.075em; }

.FStepCopy, .FSSubCopy, .FStepSMCopy, .FMeritCopy, .RGuideCopy {
  color: #4e4e4e; font-size: 1.8rem; font-weight: bold; line-height: 1.8; margin: 30px 0 0; }

.FSSubCopy { color: #6e6e6e; font-size: 1.6rem; margin-top: 1em; }
.FStepSMCopy { font-size: 1.5rem; font-weight: normal; margin-top: 12px; }
.FMeritCopy { margin-top: 50px; }

#FSTelNum { color: #2eb2e0; font-size: 3.6rem; letter-spacing: .05em; margin: 15px 0 0; padding-left: 28px; position: relative; }
#FSTelNum > i {
  position: absolute; top: 9px; left: 0;
  background-position: 0 -330px; background-size: 345px 352px; width: 22px; height: 22px; display: block; }
.edge #FSTelNum > i, .ie11 #FSTelNum > i { top: 10px}

.FStepIM { width: 380px; }

#FSIM01 { background-position: 0 -50px; width: 260px; height: 260px; margin: -30px 60px 0 0; }

.FStepLine {
  position: absolute; top: 70px; left: 27px;
  background: #ebdff6; width: 5px; height: calc(100% - 94px); display: block; }

.FStepLine:after {
  content: ''; position: absolute; bottom: -16px; left: -7px; width: 0; height: 0;
  border-style: solid; border-width: 16px 9px 0 9px; border-color: #ebdff6 transparent transparent transparent; }

.FMeritGuide { width: calc(100% - 440px); }
#childrenWelcome .FMeritGuide { margin-top: 50px; }
#informationAnalyzer { margin-top: 40px; }

.FMeritST, .reserveST { color: #0092b9; font-size: 2.5rem; letter-spacing: .07em; margin: 0; padding: 30px 0 0 106px; position: relative; }

.FFIcon, .reserveIcon {
  content: ''; position: absolute; top: 0; left: 0; background: #73b51e; width: 90px; height: 90px;
  display: block; -webkit-border-radius: 50%; border-radius: 50%; }

.FFIcon:after, .reserveIcon:after { content: ''; position: absolute; display: block; }
#FMChildST .FFIcon:after { top: 22px; left: 24px; background-position: 0 -320px; width: 43px; height: 46px; }
#FMAnalyzerST .FFIcon:after { top: 31px; left: 22px; background-position: -60px -330px; width: 46px; height: 29px; }

#FMAnalyzInfo { margin: 12px 0 0; padding: 0; }

#FMAnalyzInfo > li {
  font-size: 1.6rem; line-height: 1.6; letter-spacing: .05em; margin: 0; padding: 8px 0 0 25px; position: relative; }

#FMAnalyzInfo > li:before, #FMAnalyzInfo > li:after { content: ''; position: absolute; top: 12px; left: 0; display: block; }
.win.firefox #FMAnalyzInfo > li:before, .win.firefox #FMAnalyzInfo > li:after { top: 13px}
.ie11 #FMAnalyzInfo > li:before, .ie11 #FMAnalyzInfo > li:after { top: 10px}

#FMAnalyzInfo > li:before {
  background: #69c04e; width: 16px; height: 16px; -webkit-border-radius: 4px; border-radius: 4px; }
#FMAnalyzInfo > li:after {
  width: 9px; height: 4px; margin: 4px 0 0 2px; border-left: 3px solid #fff; border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.FMeritIM { width: 300px; margin-right: 40px; }
.FMeritIM img { -webkit-border-radius: 50%; border-radius: 50%; }

#analyzerGuide { margin-top: 40px; }

#analyzFee { width: calc(100% - 440px); }

#analyzFeeList, #feeListTA { width: 100%; border-collapse: collapse; border: 2px solid #aed579; }

#analyzFeeList th, #analyzFeeList td, #feeListTA th, #feeListTA td {
  font-size: 1.8rem; font-weight: bold; letter-spacing: .08em; white-space: nowrap;
  padding: 22px 0 23px; border-bottom: 2px solid #aed579; }
#analyzFeeList tr:first-of-type th, #analyzFeeList tr:first-of-type td { padding-top: 23px}
#analyzFeeList tr:last-of-type th, #analyzFeeList tr:last-of-type td { padding-bottom: 24px}

#feeListTA th, #feeListTA td { padding: 22px 0 21px}
#feeListTA tr:first-of-type th, #feeListTA tr:first-of-type td { padding-top: 24px}
#feeListTA tr:last-of-type th, #feeListTA tr:last-of-type td { padding-bottom: 22px}

.ie11 #feeListTA th, .ie11 #feeListTA td { padding: 21px 8px 15px}
.ie11 #feeListTA tr:first-of-type th, .ie11 #feeListTA tr:first-of-type td { padding-top: 22px}
.ie11 #feeListTA tr:last-of-type th, .ie11 #feeListTA tr:last-of-type td { padding-bottom: 15px}

.mac.firefox #feeListTA th, .mac.firefox #feeListTA td { padding: 14px 0 12px}

#analyzFeeList th, #feeListTA th { color: #525252; text-align: center; width: 33%; }

.AFLFree, .FLType { color: #62a21e; margin-left: .4em; }

#analyzFeeList td, #feeListTA td { color: #0092b9; padding-left: 20px; border-left: 2px solid #aed579; }
.mac.firefox #feeListTA td { padding-left: 20px}

#analyzFeeList tr:last-of-type th, #analyzFeeList tr:last-of-type td,
#feeListTA tr:last-of-type th, #feeListTA tr:last-of-type td{ border-bottom: none; }

#analyzReserve {
  color: #fff; background: #77a244; font-size: 1.8rem; text-align: center; font-weight: bold; width: 380px; margin: 0; }

#analyzReserve > dt { letter-spacing: .1em; padding-top: 11%; }
#analyzReserve > dd { line-height: 1.4; letter-spacing: .085em; margin: 12px 0 0; }

@media (min-width: 1300px) { #analyzFeeList th { text-align: right; padding-right: 5%} #analyzFeeList td { padding-left: 5%}}
@media (max-width: 1200px) { #analyzFeeList th { width: 28%}}
@media (max-width: 1160px) { #analyzFeeList th { width: 24%}}
@media (max-width: 1150px) {
  #analyzFeeList th, #analyzFeeList td { font-size: 1.7rem}
  #analyzFeeList th { width: 22%} #analyzFeeList td { padding-left: 14px} #analyzReserve > dt { padding-top: 14%}}

#flowFacilitie { width: 1000px; height: 780px; margin: 70px auto 0; position: relative; }
#flowFacilitie:before, #flowFacilitie:after { content: ''; position: absolute; top: 50%; left: 50%; }
#flowFacilitie:before {
  width: 532px; height: 532px; z-index: -1; margin: -270px 0 0 -270px; display: block;
  border: 8px solid #e2f2d5; -webkit-border-radius: 50%; border-radius: 50%; }
#flowFacilitie:after {
  background-position: -130px -320px; width: 130px; height: 150px; margin: -75px 0 0 -65px; z-index: 10; }

#FFacItem01, #FFacItem02, #FFacItem03 { position: absolute; z-index: 5; }
#FFacItem01 { top: 0; left: 0; width: 500px; }
#FFacItem02 { top: 0; right: 0; width: 330px; }
#FFacItem03 { bottom: 0; left: 0; }
#FFacIM03 { width: 360px;}
#FFacIM03 img { width: 360px; -webkit-border-radius: 50%; border-radius: 50%; }

.FFIMcap { color: #0092b9; font-size: 1.8rem; letter-spacing: .07em; margin: 10px 0 0; padding: 2px 0; }

.FFIMCopy { font-size: 1.5rem; line-height: 1.4; letter-spacing: .03em; margin: 8px 0 0; padding: 2px 0; }

#FFacItem02 .FFIMcap, #FFacItem02 .FFIMCopy { background: #fff; }

#FFIMAlt { position: absolute; top: 265px; left: 350px; width: 370px; }

/* Reserve Contents */
#reserveTit .flowTEN { font-size: 2rem; top: 67px; }

#reserveTopIcon {
  content: ''; position: absolute; top: 60px; right: 0;
  background-position: -280px -50px; width: 180px; height: 180px; display: block; }

#reserveContents { margin: 0; padding: 30px 0 0 125px; }

.reserveItem { max-width: 875px; }
#cancelGuide { margin-top: 20px}

#RGuideST .reserveIcon:after { top: 27px; left: 27px; background-position: 0 -379px; width: 36px; height: 36px; }

#CGuideST { color: #f07022; }
#CGuideST .reserveIcon { background: #f7931e; }
#CGuideST .reserveIcon:after { top: 21px; left: 30px; background-position: -60px -380px; width: 30px; height: 46px; }

.RGuideCopy { padding-left: 106px; } .RGCSec { margin-top: 12px; display: block; }

#RGTelNum { color: #2eb2e0; font-size: 4.6rem; text-align: center; letter-spacing: .05em; margin: 20px 0 0; position: relative; }
#RGTelNum:before {
  content: ''; position: absolute; top: 13px; left: 50%; margin-left: -4.25em;
  background-position: 0 -440px; width: 30px; height: 30px; display: block; }

/* Schedule Contents */
#scheduleContainer { position: relative; }

#scheduleIcon {
  position: absolute; top: 72px; right: 60px; background: url(../flow-fee/images/schedule.png) no-repeat 0 0 / 130px 126px;
  width: 130px; height: 126px; display: block; }

#scheduleTable { margin-top: 20px; padding-left: 225px; }

#scheduleNotice { font-size: 2rem; letter-spacing: .09em; margin: 30px 0 10px; }
#scheduleNotice:before { content: '*'; color: #e40; font-size: 2.5rem; vertical-align: -.3em; padding-right: 5px; }

/* Fee Contents */
#feeContainer { margin: 0; }

#feeIcon {
  content: ''; position: absolute; top: 60px; right: 0;
  background-position: -300px -260px; width: 140px; height: 200px; display: block; }

#feeContents { margin-top: 10px; padding-left: 225px; }

#feeListTA { max-width: 60%; }
#feeListTA th { background: #f7fff5; width: 40%} #feeListTA td { background: #fff; padding-left: 30px; }

#feeListcaution { margin: 0; padding: 20px 0 0; }

#feeListcaution > li, #feePaymentInfo {
  color: #4e4e4e; font-size: 1.6rem; font-weight: bold; line-height: 1.5; letter-spacing: .05em; margin: 4px 0 0; }
#feeListcaution > li:before { content: '*'; color: #ee2222; font-size: 2rem; vertical-align: -.2em; padding-right: 4px; }

#feePaymentInfo { margin-top: 36px; } #FPCards { width: 648px; margin-top: 28px; }

@media (max-width: 1200px) {
  .FSGuide { width: calc(100% - 495px)} #flowContents { padding-left: 95px}
  #flowMerit, #reserveContents { padding-left: 75px} .FMeritGuide { width: calc(100% - 425px)}}

@media (max-width: 1150px) { #feeListcaution > li, #feePaymentInfo { font-size: 1.5rem}}

/* -------------------------------------------
 Patient's Voice
------------------------------------------- */
/* Voice Head Area */
#voiceEyecatch { background: url(../voice/images/eyecatch.jpg) no-repeat center top; height: 380px; }

#voiceTitle:before {
  content: ''; position: absolute; top: 0; right: 60px; display: block;
  background: url(../voice/images/girl.png) no-repeat 0 0 / 246px 225px; width: 246px; height: 225px; }

@media (min-width: 2000px) { #voiceEyecatch { background-position: center bottom; background-size: 100%}}

/* Voice List page */
#voiceMain { margin-top: 5px; }

#voiceList { padding: 30px 50px 0; }
.win.firefox #voiceList { padding-right: 40px}

.voiceItem {
  background: #fff; text-decoration: none; width: calc(50% - 127px); margin-top: 40px; padding: 35px 50px; border: 1px solid #ded9d5;
  cursor: pointer; display: block; overflow: hidden; position: relative; }

.voiceItem:hover { -webkit-transform: translate3d(0,-10px,0); transform: translate3d(0,-10px,0); }
.VIFemale:hover { border: 1px solid #f2aec0; }
.VIMale:hover { border: 1px solid #7ed2ec; }
.VIHead { color: #494949; font-size: 1.6rem; letter-spacing: .05em; margin: 0; padding-left: 70px; }

.voiceItem .VISymptoms { font-size: 1.8rem; letter-spacing: .08em; margin-top: 6px; display: block; }
.VIFemale .VISymptoms, #VDTitle.VDFemale { color: #b23e5e; } .VIMale .VISymptoms, #VDTitle.VDMale { color: #1797c0; }

.voiceItem .VIComment { color: #333; font-size: 1.5rem; line-height: 1.6; letter-spacing: .06em; margin: 18px 0 0; }
.ie11 .voiceItem .VIComment { font-size: 1.6rem; margin-top: 20px}

.VIGender { position: absolute; top: 30px; left: 50px; width: 50px; height: 50px; margin: 0; display: block; }
.VIFemale .VIGender { background: url(../voice/images/female.svg) no-repeat 0 0 / 50px 50px; }
.VIMale .VIGender { background: url(../voice/images/male.svg) no-repeat 0 0 / 50px 50px; }

/* Voice Individual page */
#voiceIndividual { margin-top: 5px; padding-bottom: 60px; border-top: 10px solid #f9f6f2; }

#voiceIndStage { min-width: 800px; max-width: 1180px; margin: 0 auto; padding: 60px 100px 60px; position: relative; }
#voiceIndStage:after {
  content: ''; position: absolute; bottom: 0; left: 100px; background: #ded9d5; width: calc(100% - 200px); height: 1px; }

#voiceData { width: calc(60% - 40px); }

#VDTitle { font-size: 2.8rem; letter-spacing: .06em; margin: 0; padding: 15px 0 0 120px; position: relative; }
#VDTitle.VDFemale .VDIcon, #VDTitle.VDMale .VDIcon {
  content: ''; position: absolute; top: 0; left: 0; width: 90px; height: 90px; margin: 0; display: block; }
#VDTitle.VDFemale .VDIcon { background: url(../voice/images/female.svg) no-repeat 0 0 / 90px 90px; }
#VDTitle.VDMale .VDIcon { background: url(../voice/images/male.svg) no-repeat 0 0 / 90px 90px; }

.VDAge { color: #4e4e4e; font-size: 2rem; margin-top: 10px; display: block; }

#VDSymptoms, .voiceDT {
  color: #4e4e4e; font-size: 2rem; letter-spacing: .07em; margin: 50px 0 0;
  padding-bottom: 6px; border-bottom: 2px solid #ddd; display: inline-block; }
.voiceDT { color: #3e8e22; border-color: #d9e9c9; }

#VDSympList { margin: 20px 0 0; padding: 0; }

#VDSympList > li {
  color: #fff; background: #a79785; font-size: 1.8rem; letter-spacing: .07em;
  margin-right: 12px; padding: 4px 9px 6px 10px; display: inline-block; }

.voiceST { font-size: 2.2rem; letter-spacing: .1em; margin: 50px 0 0; position: relative; }

#PatientVoiceST { color: #79b242; padding: 8px 0 10px 5px; }
#PatientVoiceST:before, #PatientVoiceST:after { content: ''; position: absolute; left: 0; width: 100%; height: 2px; }
#PatientVoiceST:before { top: 0; background: #d9e9c9; }
#PatientVoiceST:after { bottom: 0; background: #d9e9c9; }

.voiceDT { margin-top: 38px; }

.voiceDCopy, .DVCopy { font-size: 1.6rem; line-height: 1.8; letter-spacing: .06em; margin: 1em 0 0; }
.DVCopy { margin-top: 30px; }
.voiceDCopy p, .DVCopy p, .DVCopy p { margin: 0}

#VISide { width: calc(40% - 40px); }

#commentSheet { text-align: center; }

#directorVoiceST { color: #00a2c2; padding: 9px 0 11px 5px; }
#directorVoiceST:before, #directorVoiceST:after { content: ''; position: absolute; left: 0; width: 100%; height: 2px; }
#directorVoiceST:before { top: 0; background: #ccecf3; }
#directorVoiceST:after { bottom: 0; background: #ccecf3;}

/* -------------------------------------------
 Q&A Page
------------------------------------------- */
/* Q&A Head Area */
#qaEyecatch { background: url(../qa/images/eyecatch.jpg) no-repeat center top; height: 380px; }

@media (min-width: 2000px) { #qayecatch { background-position: center bottom; background-size: 100%}}

/* Q&A Navi */
#QAWrapp { width: 1000px; margin: 0 auto; padding-bottom: 60px;  }

#qaNavi { padding-bottom: 0; }

.qaST, .accessST { text-align: center; margin: 0; position: relative; }

#QNavST, #GmapST { color: #79b242; font-size: 2.2rem; letter-spacing: .1em; padding: 9px 0 12px; }

.qaST:before, .qaST:after, .accessST:before, .accessST:after {
  content: ''; position: absolute; left: 0; width: 100%; height: 2px; display: block; }
#QNavST:before, #GmapST:before { top: 0; background: #d9e9c9; }
#QNavST:after, #GmapST:after { bottom: 0; background: #d9e9c9; }

#QNList { margin: 0; padding: 0; }

#QNList > li { font-size: 1.8rem; text-align: center; letter-spacing: .05em; width: calc(50% - 20px); margin-top: 30px; }

#QNList > li a { color: #fff; padding: 16px 0 15px; position: relative; }
.ie11 #QNList > li a { padding: 20px 0 12px}
.win.firefox #QNList > li a { padding: 15px 0 17px}

#QNList > li a:before, #QNList > li a:after {
  content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; }
#QNList > li a:before { background: #7eae3e; z-index: -2; }
#QNList > li a:after {
  background: #54bae6; -webkit-transform: scaleX(0); transform: scaleX(0);
  -webkit-transform-origin: top left; transform-origin: top left; z-index: -1; }
#QNList > li a:hover:after { -webkit-transform: scaleX(1); transform: scaleX(1); }

.QACST, #AGuideST { color: #00a2c2; font-size: 2rem; letter-spacing: .075em; margin-top: 60px; padding: 13px 0 14px; }
.QACST:before, #AGuideST:before { top: 0; background: #ccecf3; }
.QACST:after, #AGuideST:after { bottom: 0; background: #ccecf3; }

.QAItem { margin: 0; padding: 0 50px; }

.QAItem dt {
  color: #555; font-size: 1.8rem; font-weight: bold; letter-spacing: .035em; margin: 35px 0 0; padding: 8px 0 0 30px; position: relative; }

.QAQ, .QAA { position: absolute; top: 0; left: 0; width: 26px; display: block; } .ie11 .QAA { top: -2px}
.QAQ { background: url(../qa/images/q.svg) no-repeat 0 0 / 26px 29px; height: 29px; }
.QAA { background: url(../qa/images/a.svg) no-repeat 0 0 / 26px 27px; height: 27px; margin-left: -38px; }

.QAQNum { color: #ff7722; font-size: 2rem; padding-right: 8px; }

.QAItem dd { font-size: 1.6rem; line-height: 1.8; letter-spacing: .035em; margin: 22px 0 0 78px; position: relative; }

/* -------------------------------------------
 Access Page
------------------------------------------- */
/* Access Head Area */
#accessEyecatch { background: url(../access/images/eyecatch.jpg) no-repeat left top; height: 380px; }

@media (min-width: 2000px) { #accessEyecatch { background-position: center bottom; background-size: 100%}}

/* Access Contents */
#accessMain { margin-top: 5px; border-top: 10px solid #f9f6f2; }

#accessWrapp { max-width: 1180px; padding: 10px 50px 60px;  }

.accessST { margin-top: 60px; } #GmapST { padding: 12px 0; } #AGuideST { padding-bottom: 13px; }

#mapCanvas { background: #eee; width: calc(100% - 2px); height: 518px; margin: 40px 0 0; border: 1px solid #ddd; }

#AGUpper { margin-top: 40px; }

.AGData { width: calc(100% - 600px); }

#AGList { font-size: 1.6rem; margin: 0; }
#AGUpper dt {
  color: #fff; float: left; background: #a79785; text-align: center; letter-spacing: .08em;
  width: 5.25em; margin: 0 0 15px; padding: 4px 0; display: inline-block; }
.edge #AGUpper dt { padding: 2px 0 5px}
#AGUpper dd { letter-spacing: .04em; margin: 0 0 15px; padding: 4px 0 4px 6em; }
.ie11 #AGUpper dd { padding-top: 7px}

#AGPlate { width: 360px; margin: 30px 0 0 80px; position: relative; overflow: visible; }
#AGPlate img { -webkit-border-radius: 50%; border-radius: 50%; }

.AGIMCap { position: absolute; font-size: 1.6rem; font-weight: bold; letter-spacing: .04em; white-space: nowrap; }
#AGPCap { bottom: 5px; right: 290px; }
#PGSFCap { top: -1.75em; left: 0; }
#PGOCap { top: -3.35em; right: 0; line-height: 1.4; text-align: right; }

#neighborhoodMap { width: 540px; }

#AGBottom { margin-top: -60px; padding-bottom: 180px; position: relative; }

#parkingGuide { width: 460px; margin: 0 auto; position: relative; z-index: -1; }

#PGShopFront, #PGOuter { position: absolute; bottom: 0; width: 420px; overflow: visible; }
#PGShopFront { left: 0} #PGOuter { right: 0}


@media (max-width: 1240px) {
  .AGNarrow { margin-top: 8px; display: block}
  #AGBottom {padding-bottom: 200px} #parkingGuide { width: 440px}}

@media (max-width: 1150px) { #AGPlate { width: 340px} #neighborhoodMap { width: 510px} #PGShopFront, #PGOuter { width: 400px}}

/* -------------------------------------------
 News CMS
------------------------------------------- */
/* News Common */
#newsEyecatch { background: url(../news/images/eyecatch.jpg) no-repeat left top; height: 380px; }

@media (min-width: 2000px) { #newsEyecatch { background-position: center bottom; background-size: 100%}}

/* News Top List */
#newsTop { margin-top: 5px; }

#newsList { padding: 30px 0 50px; }
#newsList:after { content: ''; width: 30.5%; display: block; }

.newsItem { text-decoration: none; width: 30.5%; max-width: 385px; margin-top: 40px; }

.NIImage, .BLImage { width: 100%; overflow: hidden; opacity: 1; }
@media (min-width: 1321px) { .NIImage { max-height: 260px} .BLImage { max-height: 284px}}
@media (max-width: 1320px) { .NIImage { max-height: 250px} .BLImage { max-height: 274px}}
@media (max-width: 1280px) { .NIImage { max-height: 240px} .BLImage { max-height: 264px}}
@media (max-width: 1230px) { .NIImage { max-height: 230px} .BLImage { max-height: 250px}}
@media (max-width: 1180px) { .NIImage { max-height: 220px} .BLImage { max-height: 240px}}
@media (max-width: 1130px) { .NIImage { max-height: 205px} .BLImage { max-height: 225px}}

.newsItem:hover .NIIM, .blogItem:hover .NIIM { opacity: .75; -webkit-transform: scale(1.2); transform: scale(1.2); }

.newsItem .NIDate, .blogItem .NIDate {
  color: #b2a589; font-size: 1.6rem; letter-spacing: .1em; margin: 15px 0 0; padding-left: 20px; display: block; position: relative; }

.NIDate:before {
  content: ''; position: absolute; top: 0; left: 0;
  width: 0; height: 0; border-style: solid; border-width: 10px 10px 0 0;
  border-color: #4eb7e7 transparent transparent transparent; display: block; }
.newsItem:hover .NIDate:before, .blogItem:hover .NIDate:before { top: 2px; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
.edge .newsItem:hover .NIDate:before, .edge .blogItem:hover .NIDate:before { top: 3px}

.NIYear { font-size: 1.4rem; }

.newsItem .NITitle, .blogItem .NITitle {
  color: #555; font-size: 1.6rem; font-weight: bold; line-height: 1.4; letter-spacing: .05em; margin: 9px 0 0; }

.newsItem:hover .NITitle, .blogItem:hover .NITitle { color: #4eb7e7; }

/* News Individual */
#newsIndividual { margin-top: 5px; padding-bottom: 60px; border-top: 10px solid #f9f6f2; }

#newsMain { max-width: 1000px; margin: 0 auto; padding: 90px 0 45px; position: relative; }
#newsMain:before {
  content: ''; position: absolute; top: 30px; left: 50%; width: 50px; height: 50px; margin-left: -25px;
  background: url(../news/images/post-mark.svg) no-repeat 0 0 / 50px 50px; display: block; }

#newsArticleTitle, #blogArticleTitle {
  color: #555; font-size: 2.6rem; text-align: center; line-height: 1.3; letter-spacing: .08em;
  margin: 0; padding-bottom: 18px; border-bottom: 1px solid #ddd8cc;  }

#NADTime, #blogArticle #NADTime { color: #b59e72; text-align: center; margin-top: 12px; display: block; }
.NADate { font-size: 3.4rem; font-style: normal; }
.NADSpace { font-size: 2rem; padding: 0 4px; vertical-align: .1em; }
.NADMonth { font-size: 1.6rem; letter-spacing: .1em; }

/* -------------------------------------------
 Blog CMS
------------------------------------------- */
/* Blog Common */
#blogEyecatch { background: url(../blog/images/eyecatch.jpg) no-repeat 60% top; height: 380px; }

@media (min-width: 2000px) { #blogEyecatch { background-position: center bottom; background-size: 100%}}

#blogTop { margin-top: 5px; border-top: 10px solid #f9f6f2; }

#blogWrapp { padding-top: 60px; position: relative; }
#blogWrapp:before { content: ''; position: absolute; top: 60px; right: calc(20.313% + 70px); background: #d0ddbb; width: 1px; height: calc(100% - 110px); }
#blogIndividual #blogWrapp:before { height: calc(100% - 60px)}

#blogMain, #blogIndContents { width: 100%; max-width: calc(100% - 20.312% - 89px); }

#blogList, #blogIndContents { padding: 0 49px 0 0; } .ie11 #blogList, .ie11 #blogIndContents { box-sizing: border-box}

.ie11 #blogMain, .ie11 #blogIndContents { width: 79.5%} .ie11 #blogList, .ie11 #blogIndContents { padding-right: 89px}
.win.firefox #blogMain, .win.firefox #blogIndContents { width: 79.5%; padding-right: 39px; box-sizing: border-box}
.win.firefox #blogIndContents { padding-right: 89px}
.win.firefox #blogList { box-sizing: border-box}

.blogItem { text-decoration: none; width: calc(50% - 25px); margin-bottom: 30px }

.blogItem .NIDate { color: #9ebb7e; display: inline-block; }

.BLCat { color: #777; font-size: 1.4rem; letter-spacing: .04em; padding-left: 20px; }
.BLCat:before {content: '-'; padding-right: 4px; }

#blogSide { width: 20.313%; }

.sideListST { color: #a2c285; font-size: 2rem; letter-spacing: .1em; margin: 0; padding-bottom: 10px; border-bottom: 1px solid #d0ddbb; }

.blogSideList { margin: 16px 0 0; padding: 0; }

.blogSideList > li { font-size: 1.6rem; line-height: 1.4; letter-spacing: .025em; margin: 10px 0; }

.BSNum { color: #888; font-size: 1.3rem; letter-spacing: .1em; vertical-align: .12em; }

.blogSideList a { color: #555; text-decoration: none; } .blogSideList a:hover { color: #4eb7e7}

@media (max-width: 1180px) {
  #blogWrapp:before { right: calc(20.313% + 60px)} #blogMain, #blogIndContents { width: calc(100% - 20.312% - 79px)}
  .ie11 #blogMain, .ie11 #blogIndContents { width: 79.5%} .ie11 #blogList, .ie11 #blogIndContents { padding-right: 79px}
  .win.firefox #blogWrapp:before { right: calc(20.313% + 70px)} .win.firefox #blogMain { padding-right: 29px}}
@media (max-width: 1200px) { .blogItem .NIDate { display: block} .BLCat { padding: 8px 0 0 20px; display: block}}

/* Blog Individual */
#blogIndividual { padding-bottom: 60px; }

#blogIndividual #blogWrapp { width: 100%; margin: 0 auto; }

#blogArticle { padding-top: 25px; position: relative; }
#blogArticle:before {
  content: ''; position: absolute; top: -35px; left: 50%; width: 50px; height: 50px; margin-left: -25px;
  background: url(../blog/images/post-mark.svg) no-repeat 0 0 / 50px 50px; display: block; }

.BACat { position: absolute; top: -1em; left: 0; color: #888; font-size: 1.4rem; letter-spacing: .06em; margin: 0; }

#blogArticle #NADTime { color: #6a9833; }

#blogBody { padding-bottom: 50px; overflow: hidden; }

#newsBody { margin-top: 50px; overflow: hidden; }

#blogBody p, #newsBody p { font-size: 1.6rem; line-height: 2.4; margin: 1.5em 0 0; overflow: hidden; }

#blogBody p a, #newsBody p a, #blogBody h2 a, #newsBody h2 a, #blogBody h3 a, #newsBody h3 a,
#blogBody h4 a, #newsBody h4 a, #blogBody h5 a, #newsBody h5 a, #blogBody h6 a, #newsBody h6 a,
#blogBody li a, #newsBody li a { color: #08b; text-align: center; text-decoration: none; width: auto; display: inline-block; position: relative; }
#blogBody p a, #newsBody p a, #blogBody li a, #newsBody li a { line-height: 1.8}

#blogBody .blogImage, #newsBody .blogImage { display: block}
#blogBody .blogImage:after, #newsBody .blogImage:after { display: none}

#blogBody img, #newsBody img { width: auto !important; max-width: 100%; }

#blogBody h2, #newsBody h2 {
  color: #444; font-size: 2.2rem; line-height: 1.3; letter-spacing: .075em; margin: 30px 0 0; padding: 0 5px 8px 34px; display: inline-block; position: relative}
#blogBody h2 { border-bottom: 2px solid #d0ddbb} #newsBody h2 { border-bottom: 2px solid #ddd0c0}

#blogBody h2:before, #newsBody h2:before, #blogBody h3:before, #newsBody h3:before {
  content: ''; position: absolute; top: 2px; left: 0; width: 26px; height: 26px; display: block; }
#blogBody h2:before { background: url(../blog/images/post-mark.svg) no-repeat 0 0 / 26px 26px}
#newsBody h2:before { background: url(../news/images/post-mark.svg) no-repeat 0 0 / 26px 26px}

#blogBody h3, #newsBody h3 {
  color: #444; font-size: 1.8rem; line-height: 1.4; letter-spacing: .08em; margin: 25px 0 0; padding: 0 3px 6px 16px; display: inline-block; position: relative}
#blogBody h3 { border-bottom: 1px solid #d0ddbb} #newsBody h3 { border-bottom: 1px solid #ddd0c0}

#blogBody h3:before, #newsBody h3:before { top: 4px; width: 8px; height: 18px; }
#blogBody h3:before { background: #aecc95} #newsBody h3:before { background: #ddd0c0}
.edge #blogBody h3:before, .edge #newsBody h3:before,
.win.firefox #blogBody h3:before, .win.firefox #newsBody h3:before{ top: 5px}

#blogBody ul, #newsBody ul { margin: 0; padding: 1em 0 0 32px; }
#blogBody li, #newsBody li { font-size: 1.6rem; line-height: 2; margin: 0; padding-left: 12px; position: relative}

#blogBody li:before, #newsBody li:before {
  content: ""; position: absolute; top: 50%; left: 0; background: #aecc95;
  width: 6px; height: 6px; margin-top: -3px; display: inline-block; -webkit-border-radius: 50%; border-radius: 50%}
#newsBody li:before { background: #ddd0c0}

.edge #blogBody li:before, .edge #newsBody li:before { margin-top: -2px}
.ie11 #blogBody li:before, .ie11 #newsBody li:before { margin-top: -6px}

/* Blog Category Archives */
#blogCatName { color: #59921e; font-size: 3rem; text-align: center; letter-spacing: .08em; margin: 0; padding-bottom: 35px; }

.catNum { color: #7eae47; font-size: 2rem; vertical-align: .15em; }

/* -------------------------------------------
 CMS Navi
------------------------------------------- */
/* Blog List Navigation */
#blogPageNavi, #newsPageNavi,#voicePageNavi { padding: 33px 0 60px; }

#blogPageNavi, #newsPageNavi { padding-bottom: 50px; border-top: 1px solid #d0ddbb; }
#newsPageNavi { border-top: 1px solid #ddd8cc}
.ie11 #blogPageNavi, .ie11 #newsPageNavi, .win.firefox #blogPageNavi { margin-right: 49px}

.win.firefox #blogPageNavi { margin-right: 49px}
@media (max-width: 1180px) { .ie11 #blogPageNavi { margin-right: 39px}}

#blogPagination { text-align: center; margin: 0 auto; padding: 0 7px 0 0; }

#blogPagination li, #voicePageNavi li { font-size: 1.6rem; margin: 7px 0 0 7px; display: inline-block; }

.link_page, .current_page { width: 40px; height: 40px; margin-top: 5px; display: block; position: relative; z-index: 1; }

.link_page:before, .link_page:after, .current_page:before {
  content: ''; position: absolute; top: -11px; left: 0; width: 40px; height: 40px;
  -webkit-border-radius: 50%; border-radius: 50%; }

#blogPageNavi .link_page:before, #newsPageNavi .link_page:before, #voicePageNavi .link_page:before { background: #54bae6; z-index: -2; }
#blogPageNavi .current_page:before { background: #c0ccb2; z-index: -1; }
#newsPageNavi .current_page:before, #voicePageNavi .current_page:before { background: #c9c4bb; z-index: -1; }

#blogPageNavi .link_page:after, #newsPageNavi .link_page:after, #voicePageNavi .link_page:after {
  background: #ff80ac; -webkit-transform: scale(0); transform: scale(0); z-index: -1; }

#blogPageNavi .link_page:hover:before, #newsPageNavi .link_page:hover:before, #voicePageNavi .link_page:hover:before { opacity: 0; }
#blogPageNavi .link_page:hover:after, #newsPageNavi .link_page:hover:after, #voicePageNavi .link_page:hover:after {
  -webkit-transform: scale(1); transform: scale(1); }

#GLPagination a, #blogPagination a { color: #fff; text-decoration: none; cursor: pointer; display: block; }

.current_page { color: #f9f9f9; }

#blogPageNavi .link_before, #blogPageNavi .link_next,
#newsPageNavi .link_before, #newsPageNavi .link_next, #voicePageNavi .link_before, #voicePageNavi .link_next {
  color: #666; font-size: 2.6rem; padding: 0 10px; vertical-align: -.07em; display: inline-block; }

#blogPageNavi .link_before:hover, #blogPageNavi .link_next:hover,
#newsPageNavi .link_before:hover, #newsPageNavi .link_next:hover,
#voicePageNavi .link_before:hover, #voicePageNavi .link_next:hover { color: #e30; }

/* Individual Pagination */
#newsIndNavi, #VoiceIndNavi { max-width: 1000px; margin: 0 auto; padding: 0 50px; position: relative; }
#blogIndNavi { margin: 35px 0 0; padding: 0} #newsIndNavi { margin-top: 35px; }
#VoiceIndNavi { padding-top: 50px; }

.win .indPageNavi { font-weight: 500}

.indPageNavi a {
 font-size: 1.5rem; text-align: center; letter-spacing: .06em; text-decoration: none;
 padding: 17px 0 18px; display: block; position: relative; z-index: 1; }
#blogIndNavi.indPageNavi a, #newsIndNavi.indPageNavi a { padding: 32px 0 33px; }
.win.firefox #blogIndNavi.indPageNavi a, .win.firefox #newsIndNavi.indPageNavi a { padding: 31px 0 34px; }

#blogIndNavi.indPageNavi a { color: #6a9833; position: relative; }
#VoiceIndNavi.indPageNavi a, #newsIndNavi.indPageNavi a { color: #9e8e72; position: relative; }

#blogIndNavi.indPageNavi a:hover, #VoiceIndNavi.indPageNavi a:hover,
#newsIndNavi.indPageNavi a:hover { color: #fff; text-shadow: none; }

.previousEntry, .nextEntry { letter-spacing: .06em; width: calc(33.5% - 2px); }
.previousEntry { border-right: 2px solid #fff; }
.nextEntry { border-left: 2px solid #fff; }
.returnList { letter-spacing: .2em; width: 33%; }

.previousEntry a:before, .returnList a:before, .nextEntry a:before,
.previousEntry a:after, .returnList a:after, .nextEntry a:after {
 content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; z-index: -1; }

.previousEntry a:before, .previousEntry a:after { -webkit-border-radius: 10px 0 0 10px; border-radius: 10px 0 0 10px; }
.nextEntry a:before, .nextEntry a:after { -webkit-border-radius: 0 10px 10px 0; border-radius: 0 10px 10px 0; }

#blogIndNavi .previousEntry a:before, #blogIndNavi .nextEntry a:before { background: #e5f2dd; }
#blogIndNavi .returnList a:before { background: #d9eec9; }

#VoiceIndNavi .previousEntry a:before, #VoiceIndNavi .nextEntry a:before,
#newsIndNavi .previousEntry a:before, #newsIndNavi .nextEntry a:before{ background: #eeece5; }
#VoiceIndNavi .returnList a:before, #newsIndNavi .returnList a:before { background: #e5e3dd; }

.previousEntry a:after, .returnList a:after, .nextEntry a:after {
 background: #777; -webkit-transform: scaleX(0); transform: scaleX(0); }

.previousEntry a:after { -webkit-transform-origin: top right; transform-origin: top right; }
.returnList a:after { -webkit-transform-origin: 50%; transform-origin: 50%; }
.nextEntry a:after { -webkit-transform-origin: top left; transform-origin: top left; }

.previousEntry a:hover:after, .returnList a:hover:after, .nextEntry a:hover:after {
 -webkit-transform: scaleX(1); transform: scaleX(1); }

/* SNS Share */
.shareWrap { margin: 0 auto; border-top: 1px solid #ddd8cc; border-bottom: 1px solid #ddd8cc; }
#newsIndividual .shareWrap { max-width: 1000px}

#SWInner { padding: 20px 0; position: relative; }

#snsST { position: absolute; top: 50%; left: 50%; color: #a28e72; font-size: 1.6rem; letter-spacing: .1em; margin: -.5em 0 0 -322px; }

#shareBTErapp { width: 300px; margin: 0 auto; }

.shareButton { margin: 0; }
.shareButton a { width: 50px; height: 50px; position: relative; }

.shareButton a:before, .shareButton a:after {
  content: ''; position: absolute; top: 0; left: 0; z-index: -2;
  width: 50px; height: 50px; display: block; -webkit-border-radius: 50%; border-radius: 50%; }

#SWTweet a:after { background: #5aa0f0; }
#SWFacebook a:after { background: #475995; }
#SWLine a:after { background: #00b833; }

.shareButton a:before { background: #888; -webkit-transform: scale(0); transform: scale(0); z-index: -1; }
.shareButton a:hover:before { -webkit-transform: scale(1); transform: scale(1);}

.shareButton i { content: ''; position: absolute; display: block; }
#SWTweet i {
  background: url(../common_im/twitter.svg) no-repeat 0 0 / 24px 20px;
  top: 16px; left: 14px; width: 24px; height: 20px; }
#SWFacebook i {
  background: url(../common_im/fb.svg) no-repeat 0 0 / 13px 24px;
  top: 13px; left: 19px; width: 13px; height: 24px; }
#SWLine i {
  background: url(../common_im/line.svg) no-repeat 0 0 / 25px 24px;
  top: 14px; left: 12.5px; width: 25px; height: 24px; }

/* -------------------------------------------
 Common Animation
------------------------------------------- */
#globalNav, #globalNav a, .bookBuy a, .voiceItem, #QNList a > i, .blogSideList a, .kiraraURL:after,
#blogBody p a, #newsBody p a, #blogBody h2 a, #newsBody h2 a, #blogBody h3 a, #newsBody h3 a,
#blogBody h4 a, #newsBody h4 a, #blogBody h5 a, #newsBody h5 a, #blogBody h6 a, #newsBody h6 a,
#blogBody li a, #newsBody li a {
 -webkit-transition: all .15s ease-in-out .1s; transition: all .15s ease-in-out .1s; }

#GNav, #retTop a, .newsItem .NITitle, .blogItem .NITitle {
 -webkit-transition: all .2s ease-in-out .2s; transition: all .2s ease-in-out .2s; }

.NIIM, .NIDate:before {
 -webkit-transition: all .3s ease-in-out .1s; transition: all .3s ease-in-out .1s; }

.homeLink:after, #subNavi a:after, #IDON:after, #retTop:before, #retTop:after, #retTop a:after,
.linkBT01 a:after, .linkBT01 a, .linkBT01 a:before, .BBLItem img, .BBLImge:after, .BBLItem i, .BBLItem .BBLTime,
.botPageLink a:after, .botPageLink a > i, .botSnsLink a:after, .PNList li a:before, .PNList li a:after,
#topTherapyTimes a:after, #topTherapyTimes a > i, #TNList > li, #TNList a > i, .TVLItem:after, .TVLItem .TVLIWrapp > i,
#TBBOutLink a:after, #TBBOutLink a > i, .voiceItem i, .link_page:before, .link_page:after, .indPageNavi a,
.link_before, .link_next, .previousEntry a:after, .returnList a:after, .nextEntry a:after, #QNList > li a:after,
.shareButton a:before {
 -webkit-transition: all .5s cubic-bezier(.075, .82, .165, 1) .1s;
 transition: all .5s cubic-bezier(.075, .82, .165, 1) .1s; }

.homeLink:before {
 -webkit-transition: background .5s cubic-bezier(.075, .82, .165, 1) .1s;
 transition: background .5s cubic-bezier(.075, .82, .165, 1) .1s; }

/* -------------------------------------------
 Custom Animation
------------------------------------------- */
/* Top Doctor Line */
@-webkit-keyframes DLine { 0%,70%{opacity:0} 100%{opacity:1} }
@keyframes DLine { 0%,70%{opacity:0} 100%{opacity:1} }
#topDirectorIM {
  -webkit-animation: DLine 1.4s ease-in-out; animation: DLine 1.4s ease-in-out; -webkit-animation-fill-mode:both; animation-fill-mode:both}
.win.chrome #topDirectorIM, .win.firefox #topDirectorIM {
  -webkit-animation: DLine 1.8s ease-in-out; animation: DLine 1.8s ease-in-out; -webkit-animation-fill-mode:both; animation-fill-mode:both}
.edge #topDirectorIM, .ie11 #topDirectorIM {
  -webkit-animation: DLine .75s ease-in-out; animation: DLine .75s ease-in-out; -webkit-animation-fill-mode:both; animation-fill-mode:both}
/* Common */

@-webkit-keyframes HLogo {
 0%,25%{ -webkit-transform: translate3d(0,-100px,0); opacity: 0} 100%{ -webkit-transform:none; opacity: 1} }
@keyframes HLogo { 0%,25%{ transform: translate3d(0,-100px,0); opacity: 0} 100%{ transform:none; opacity: 1} }
.homeLink, #subNavWrapp {
 -webkit-animation: HLogo .8s cubic-bezier(.075, .82, .165, 1); animation: HLogo .8s cubic-bezier(.075, .82, .165, 1)}

@-webkit-keyframes navSign {
 0%,30%{ -webkit-transform: translate3d(-300px,0,0); opacity: 0} 100%{ -webkit-transform:none; opacity: .7} }
@keyframes leftIn { 0%,30%{ transform: translate3d(-300px,0,0); opacity: 0} 100%{ transform:none; opacity: .7} }
#globalNav .current:before { -webkit-animation: navSign .8s cubic-bezier(.075,.82,.165,1); animation: navSign .8s cubic-bezier(.075,.82,.165,1)}

@-webkit-keyframes fadeIn { 0%{ opacity: 0} 100%{ opacity: 1} }
@keyframes fadeIn { 0%{ opacity: 0} 100%{ opacity: 1} }
.fadeIn { -webkit-animation: fadeIn .6s ease-in-out; animation: fadeIn .6s ease-in-out;
  -webkit-animation-fill-mode:both; animation-fill-mode:both}

@-webkit-keyframes fadeOut { 0%{ opacity: 1} 100%{ opacity: 0} }
@keyframes fadeOut { 0%{ opacity: 1} 100%{ opacity: 0} }
.fadeOut { -webkit-animation: fadeOut .6s ease-in-out; animation: fadeOut .6s ease-in-out;
-webkit-animation-fill-mode:both; animation-fill-mode:both}

@-webkit-keyframes fadeDown {
 0%,25%{ -webkit-transform: translate3d(0,-30px,0); opacity: 0} 100%{ -webkit-transform:none; opacity: 1} }
@keyframes fadeDown { 0%,25%{ transform: translate3d(0,-30px,0); opacity: 0} 100%{ transform:none; opacity: 1} }
.fadeDown, .pageTitle:after, #newsMain:before, #blogArticle:before {
  -webkit-animation: fadeDown .8s ease-in-out; animation: fadeDown .8s ease-in-out}
.fadeDown02 { -webkit-animation: fadeDown 1s ease-in-out; animation: fadeDown 1s ease-in-out}

@-webkit-keyframes fadeUp {
 0%,25%{ -webkit-transform: translate3d(0,30px,0); opacity: 0} 100%{ -webkit-transform:none; opacity: 1} }
@keyframes fadeUp { 0%,25%{ transform: translate3d(0,30px,0); opacity: 0} 100%{ transform:none; opacity: 1} }
.fadeUp01, #newsArticleTitle, #blogArticleTitle { -webkit-animation: fadeUp .75s ease-in-out; animation: fadeUp .75s ease-in-out}
.fadeUp02 { -webkit-animation: fadeUp .9s ease-in-out; animation: fadeUp .9s ease-in-out}
.fadeUp03 { -webkit-animation: fadeUp 1.1s ease-in-out; animation: fadeUp 1.1s ease-in-out}

@-webkit-keyframes leftIn {
 0%,25%{ -webkit-transform: translate3d(-30px,0,0); opacity: 0} 100%{ -webkit-transform:none; opacity: 1} }
@keyframes leftIn { 0%,25%{ transform: translate3d(-30px,0,0); opacity: 0} 100%{ transform:none; opacity: 1} }
.leftIn01 { -webkit-animation: leftIn .75s ease-in-out; animation: leftIn .75s ease-in-out}
.leftIn02, #flowInner:before { -webkit-animation: leftIn 1s ease-in-out; animation: leftIn 1s ease-in-out}

@-webkit-keyframes rightIn {
 0%,25%{ -webkit-transform: translate3d(30px,0,0); opacity: 0} 100%{ -webkit-transform:none; opacity: 1} }
@keyframes rightIn { 0%,25%{ transform: translate3d(30px,0,0); opacity: 0} 100%{ transform:none; opacity: 1} }
.rightIn01 { -webkit-animation: rightIn .75s ease-in-out; animation: rightIn .75s ease-in-out}
.rightIn02, #treatInner01:after, #NADTime { -webkit-animation: rightIn 1s ease-in-out; animation: rightIn 1s ease-in-out}

@-webkit-keyframes ECatchBG {0%,30%{ background-size: 110% 110%} 100%{ background-size: 2000px 380px}}
@keyframes ECatchBG {0%,30%{ background-size: 2160px 418px} 100%{ background-size: 2000px 380px}}
@media (max-width: 2000px) { .pageEyecatch {
  -webkit-animation: ECatchBG 1.6s ease-in-out; animation: ECatchBG 1.6s ease-in-out;
  -webkit-animation-fill-mode:both; animation-fill-mode:both}}

@-webkit-keyframes circleIn {0%,20%{-webkit-transform:scale(0);opacity:0} 100%{-webkit-transform: scale(1);opacity:1}}
@keyframes circleIn {0%,20%{transform:scale(0);opacity:0} 100%{transform: scale(1);opacity:1}}
.scaleUp01 {
  -webkit-animation: circleIn 1s cubic-bezier(.075,.82,.165,1); animation: circleIn 1s cubic-bezier(.075,.82,.165,1);
  -webkit-transform-origin:center; transform-origin:center}
.scaleUp02 {
  -webkit-animation: circleIn 1.2s cubic-bezier(.075,.82,.165,1); animation: circleIn 1.2s cubic-bezier(.075,.82,.165,1);
  -webkit-transform-origin:center; transform-origin:center}

@-webkit-keyframes leftScale {0%,25%{-webkit-transform:scale(0,1);opacity:0} 100%{-webkit-transform: scale(1,1);opacity:1}}
@keyframes leftScale {0%,25%{transform:scale(0,1);opacity:1,1} 100%{transform: scale(1);opacity:1}}
#topInfo {
  -webkit-animation: leftScale 1s cubic-bezier(.075,.82,.165,1); animation: leftScale 1s cubic-bezier(.075,.82,.165,1);
  -webkit-transform-origin:left top; transform-origin:left top}
#topTherapyTimes {
  -webkit-animation: leftScale 1.2s cubic-bezier(.075,.82,.165,1); animation: leftScale 1.2s cubic-bezier(.075,.82,.165,1);
  -webkit-transform-origin:left top; transform-origin:left top}

@-webkit-keyframes slideBT {
  0%,20%{ -webkit-transform: translate3d(80px,0,0); opacity:0} 100%{ -webkit-transform:none; opacity:1}}
@keyframes slideBT {
  0%,20%{ transform: translate3d(80px,0,0); opacity:0} 100%{ transform:none; opacity:1}}
#initialDiscount { -webkit-animation: slideBT 1s cubic-bezier(.075,.82,.165,1); animation: slideBT 1s cubic-bezier(.075,.82,.165,1)}

/* Lettering Animation */
@keyframes typing01 {0%,20%{transform:translate3d(-5px,0,0);opacity:0} 100%{transform:none;opacity:1}}
.onChar1{display:inline-block;animation:typing01 .2s ease}.onChar2{display:inline-block;animation:typing01 .3s ease}.onChar3{display:inline-block;animation:typing01 .4s ease}.onChar4{display:inline-block;animation:typing01 .5s ease}.onChar5{display:inline-block;animation:typing01 .6s ease}.onChar6{display:inline-block;animation:typing01 .7s ease}.onChar7{display:inline-block;animation:typing01 .8s ease}.onChar8{display:inline-block;animation:typing01 .9s ease}.onChar9{display:inline-block;animation:typing01 1s ease}.onChar10{display:inline-block;animation:typing01 1.1s ease}.onChar11{display:inline-block;animation:typing01 1.2s ease}.onChar12{display:inline-block;animation:typing01 1.3s ease}.onChar13{display:inline-block;animation:typing01 1.4s ease-in-out}.onChar14{display:inline-block;animation:typing01 1.5s ease-in-out}.onChar15{display:inline-block;animation:typing01 1.55s ease-in-out}.onChar16{display:inline-block;animation:typing01 1.6s ease-in-out}.onChar17{display:inline-block;animation:typing01 1.65s ease-in-out}.onChar18{display:inline-block;animation:typing01 1.7s ease-in-out}.onChar19{display:inline-block;animation:typing01 1.75s ease-in-out}.onChar20{display:inline-block;animation:typing01 1.8s ease-in-out}.onChar21{display:inline-block;animation:typing01 1.85s ease-in-out}.onChar22{display:inline-block;animation:typing01 1.9s ease-in-out}.onChar23{display:inline-block;animation:typing01 1.95s ease-in-out}.onChar24{display:inline-block;animation:typing01 2s ease-in-out}.onChar25{display:inline-block;animation:typing01 2.05s ease-in-out}.onChar26{display:inline-block;animation:typing01 2.1s ease-in-out}

.TEC02 .onChar1{display:inline-block;animation:typing01 1.1s ease-in-out}.TEC02 .onChar2{display:inline-block;animation:typing01 1.2s ease-in-out}.TEC02 .onChar3{display:inline-block;animation:typing01 1.3s ease-in-out}.TEC02 .onChar4{display:inline-block;animation:typing01 1.4s ease-in-out}.TEC02 .onChar5{display:inline-block;animation:typing01 1.5s ease-in-out}.TEC02 .onChar6{display:inline-block;animation:typing01 1.6s ease-in-out}.TEC02 .onChar7{display:inline-block;animation:typing01 1.7s ease-in-out}.TEC02 .onChar8{display:inline-block;animation:typing01 1.8s ease-in-out}.TEC02 .onChar9{display:inline-block;animation:typing01 1.9s ease-in-out}.TEC02 .onChar10{display:inline-block;animation:typing01 2s ease-in-out}.TEC02 .onChar11{display:inline-block;animation:typing01 2.1s ease-in-out}.TEC02 .onChar12{display:inline-block;animation:typing01 2.2s ease-in-out}.TEC02 .onChar13{display:inline-block;animation:typing01 2.3s ease-in-out}.TEC02 .onChar14{display:inline-block;animation:typing01 2.4s ease-in-out}

/* -------------------------------------------
 Link Hover
------------------------------------------- */
.tLink, #globalNav a, .blogSideList a, .kiraraURL { position: relative; }

.tLink, .kiraraURL { color: #08b; text-decoration: none; display: inline-block; }

.tLink:after, #globalNav a:after, #globalNav .current:after, .blogSideList a:after, .kiraraURL:after,
#blogBody p a:after, #newsBody p a:after, #blogBody h2 a:after, #newsBody h2 a:after, #blogBody h3 a:after, #newsBody h3 a:after,
#blogBody h4 a:after, #newsBody h4 a:after, #blogBody h5 a:after, #newsBody h5 a:after, #blogBody h6 a:after, #newsBody h6 a:after,
#blogBody li a:after, #newsBody li a:after {
 content: ''; position: absolute; bottom: 0;
 background: #f57e33; height: 3px; display: block;
 -webkit-transition: all .5s cubic-bezier(.075, .82, .165, 1) .1s; transition: all .5s cubic-bezier(.075, .82, .165, 1) .1s; }

#compLink.tLink:after, .blogSideList a:after { bottom: -4px; }
.kiraraURL:after { bottom: -3px; width: 5px}
#blogBody p a:after, #newsBody p a:after, #blogBody li a:after, #newsBody li a:after { bottom: 0; width: 5px; height: 1px}
#blogBody h2 a:after, #newsBody h2 a:after { bottom: -3px; width: 5px; height: 1px}
#blogBody h3 a:after, #newsBody h3 a:after, #blogBody h4 a:after, #newsBody h4 a:after,
#blogBody h5 a:after, #newsBody h5 a:after, #blogBody h6 a:after, #newsBody h6 a:after{ bottom: -1px; width: 5px; height: 1px}

.tLink:after, .blogSideList a:after { left: -1px; width: 6px; height: 1px; -webkit-transform-origin: top left; transform-origin: top left; }
.blogSideList a:after { width: 0; }
.tLink:hover:after, #globalNav .current:after, .blogSideList a:hover:after, .kiraraURL:hover:after { width: 100%; }
#blogBody p a:hover:after, #newsBody p a:hover:after, #blogBody h2 a:hover:after, #newsBody h2 a:hover:after, #blogBody h3 a:hover:after,
#newsBody h3 a:hover:after, #blogBody h4 a:hover:after, #newsBody h4 a:hover:after, #blogBody h5 a:hover:after, #newsBody h5 a:hover:after,
#blogBody h6 a:hover:after, #newsBody h6 a:hover:after, #blogBody li a:hover:after, #newsBody li a:hover:after { width: 100%; height: 2px}

.tLink:hover:after, .blogSideList a:after, .kiraraURL:after { height: 2px; }

#globalNav a:after {
 left: 51%; right: 51%; -webkit-transition-property: left, right; transition-property: left, right; }

#globalNav a:hover:after, #globalNav .current:after { left: 0; right: 0; }

/* -------------------------------------------
 Displey Setting
------------------------------------------- */
#homeLogo, #bottomLogo, #SNTelephone > a, #TISign, .VIGender, .VDIcon, .QAQ, .QAA, .shareButton a {
  text-indent: 400%; white-space: nowrap; overflow: hidden; }

.homeLink, #globalNav a, #subNavi a, #returnBT a, .PNList a, #topTherapyTimes a, #TNList a, #QNList > li a, .shareButton a {
 text-decoration: none; display: block; cursor: pointer; overflow: hidden; }

#globalNav a { overflow: visible; }

#globalNav .current { cursor: default; }

/* -------------------------------------------
 Clearfix
------------------------------------------- */
.clearfix:after, #footInner:after, .BBLIInner:after, #botSideInfo:after, .featureSec:after {
  content: ""; clear: both; display: block; height: 0; }
