@charset "utf-8";#cta-nav ul li a:before,#footer:before,ul:not(.reset)>li:before {
  content: ''
}

#footer .footer-inner,.for-oneself {
  text-align: center
}

#cta-nav ul li a,a:hover {
  text-decoration: none
}

* {
  box-sizing: border-box
}

ol li,ul li {
  list-style: none
}

html {
  font-size: 62.5%;
  overflow-y: scroll;
  word-break: break-word
}

body {
  color: #262626;
  font-size: 1.5rem;
  font-family: 'Noto Sans JP',sans-serif;
  font-weight: 300;
  line-height: 1.6;
  text-align: left;
  -webkit-text-size-adjust: 100%
}

body>img {
  display: block;
  margin: -1px
}

#container {
  padding-top: 75px;
  overflow: hidden
}

@media screen and (min-width: 737px) {
  body {
    font-size:1.6rem
  }

  #container {
    padding-top: 0
  }
}

#header {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 75px;
  padding: 0 75px 0 15px;
  background: #fff;
  line-height: 1.2;
  z-index: 99999
}

#header .site-title a {
  display: block;
  text-decoration: none
}

#header .site-title img {
  display: block
}

#header .site-title .title {
  padding-left: 8px;
  font-size: 1.6rem;
  font-weight: 400;
  transition: .2s
}

#header .site-title .title .supplement {
  display: block;
  margin-bottom: 3px;
  font-size: 1.08rem
}

@media screen and (min-width: 375px) {
  #header .site-title .title {
    font-size:2rem
  }
}

@media screen and (max-width: 736px) {
  #header .global-nav-icon {
    position:absolute;
    top: 0;
    right: 0;
    transition: .2s;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 75px;
    height: 75px;
    background: rgba(255,255,255,.75);
    z-index: 99999;
    cursor: pointer
  }

  body.open #header .global-nav-icon {
    background: 0 0
  }

  #header .global-nav-icon .line {
    position: relative;
    width: 34px;
    height: 2px;
    background: rgba(0,0,0,.75);
    transition: .2s
  }

  #header .global-nav-icon .line:after,#header .global-nav-icon .line:before {
    content: '';
    position: absolute;
    left: 0;
    width: 34px;
    height: 2px;
    background: rgba(0,0,0,.75);
    transition: .2s
  }

  #header .global-nav-icon .line:before {
    top: -10px
  }

  #header .global-nav-icon .line:after {
    bottom: -10px
  }

  body.open #header .global-nav-icon .line {
    background: 0 0
  }

  body.open #header .global-nav-icon .line:before {
    top: 0;
    background: #fff;
    transform: rotate(45deg)
  }

  body.open #header .global-nav-icon .line:after {
    bottom: 0;
    background: #fff;
    transform: rotate(-45deg)
  }

  #header .global-nav {
    position: fixed;
    top: 0;
    right: 100%;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 0);
    overflow: auto;
    transition: .5s background;
    z-index: 99998
  }

  body.open #header .global-nav {
    right: 0;
    background: rgb(0 0 0 / 60%)
  }

  #header .global-nav .global-nav-wrapper {
    position: relative;
    right: 100%;
    width: 80%;
    min-height: 100%;
    padding-bottom: 150px;
    background: #fff;
    transition: .5s
  }

  body.open #header .global-nav .global-nav-wrapper {
    right: 0
  }

  #header .global-nav .nav-item {
    border-bottom: 1px solid #ccc
  }

  #header .global-nav .nav-item .item-name {
    position: relative;
    display: block;
    padding: 15px 10px;
    font-family: 'M PLUS Rounded 1c',sans-serif;
    font-weight: 500;
    text-decoration: none;
    transform: rotate(.03deg);
    cursor: pointer
  }

  #header .global-nav .nav-item .item-name:after,#header .global-nav .nav-item .item-name:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 11px;
    border-bottom: 1px solid #666;
    transition: .2s
  }

  #header .global-nav .nav-item a.item-name:after {
    width: 6px;
    transform-origin: 100% 0;
    transform: rotate(45deg)
  }

  #header .global-nav .nav-item span.item-name:after {
    transform: rotate(90deg)
  }

  #header .global-nav .nav-item.open span.item-name:before {
    transform: rotate(180deg)
  }

  #header .global-nav .nav-item.open span.item-name:after {
    transform: rotate(270deg);
    opacity: 0
  }

  #header .global-nav .nav-item .sub-nav {
    margin-bottom: -1px;
    padding: 6px 10px;
    font-size: 1.35rem;
    background: #fff0f4;
    border-bottom: 3px solid #ff6691;
    overflow: hidden;
    transition: .2s
  }

  #header .global-nav .nav-item:not(.open) .sub-nav {
    height: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    border: 0;
    line-height: 0;
    opacity: 0
  }

  #header .global-nav .nav-item .sub-nav ul li a {
    position: relative;
    display: block;
    color: #000;
    padding: 8px 0 8px 20px;
    text-decoration: none
  }

  #header .global-nav .nav-item .sub-nav ul li a:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 5px;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    border-top: 1px solid #666;
    border-right: 1px solid #666;
    transform: rotate(45deg)
  }

  #header .global-nav .nav-item .sub-nav ul ul {
    margin-left: 20px;
    font-size: 1.3rem
  }

  #header .global-nav .nav-item .sub-nav ul ul li a {
    padding-left: 18px
  }

  #header .global-nav .nav-item .sub-nav ul ul li a:before {
    border: none;
    background: #666;
    border-radius: 100%
  }

  #header .global-nav .nav-item.cta {
    border-bottom: 1px solid #fde3a8
  }

  #header .global-nav .nav-item.cta .item-name {
    color: #fff;
    background: #faba25
  }

  #header .global-nav .nav-item.cta .item-name:after,#header .global-nav .nav-item.cta .item-name:before {
    border-bottom: 1px solid #fff
  }

  #header .global-nav .sns-link {
    padding: 20px 0;
    border-bottom: 1px solid #ccc
  }

  #header .global-nav .sns-link ul {
    display: flex;
    justify-content: center;
    overflow: hidden
  }

  #header .global-nav .sns-link ul li {
    position: relative;
    flex: 1
  }

  #header .global-nav .sns-link a {
    display: block;
    width: 38px;
    height: 38px;
    margin: 0 auto;
    border-radius: 100%;
    overflow: hidden
  }

  #header .global-nav .sns-link img {
    display: block
  }
}

@media screen and (min-width: 737px) {
  #header {
    height:auto;
    border-bottom: 2px solid #ff6691;
    z-index: 99999;
    padding: 0 30px
  }

  #header .header-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%
  }

  #header .site-title {
    padding: 15px 0
  }

  #header .site-title img {
    width: 320px
  }

  #header .site-title .title {
    padding-left: 12px;
    font-size: 2.3rem
  }

  #header .site-title .title .supplement {
    margin-bottom: 5px;
    font-size: 1.25rem
  }

  #header .global-nav-icon {
    display: none
  }

  #header .global-nav {
    flex: auto
  }

  #header .global-nav .global-nav-inner {
    display: flex;
    justify-content: flex-end
  }

  #header .global-nav .nav-item {
    padding: min(2vw,30px) 0
  }

  #header .global-nav .cta-nav+.nav-item {
    border-left: none
  }

  #header .global-nav .nav-item .item-name {
    position: relative;
    display: block;
    padding: 0 min(1.8vw,20px);
    font-size: min(1.62vw,1.5rem);
    text-decoration: none;
    border-left: 1px solid #ccc;
    line-height: 25px;
    transition: .2s
  }

  #header .global-nav .nav-item a.item-name:hover {
    opacity: .6
  }

  #header .global-nav .nav-item:first-child .item-name {
    border-left: none
  }

  #header .global-nav .nav-item:hover span.item-name:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: calc(-1 * min(2vw,30px));
    width: 0;
    height: 0;
    margin-left: -8px;
    border-bottom: 8px solid #fff0f4;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent
  }

  #header .global-nav .nav-item .sub-nav {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff0f4;
    border-bottom: 4px solid #ff6691;
    padding: 22px;
    opacity: 0;
    transform-origin: 0 0;
    transform: scaleY(0);
    transition: .2s
  }

  #header .global-nav .nav-item:hover .sub-nav {
    opacity: 1;
    transform: scaleY(1)
  }

  #header .global-nav .nav-item .sub-nav ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap
  }

  #header .global-nav .nav-item .sub-nav ul li {
    padding: 5px
  }

  #header .global-nav .nav-item .sub-nav ul li a {
    display: block;
    color: #fff;
    background: #ff6691;
    padding: 6px 14px;
    font-size: 1.5rem;
    font-weight: 500;
    border: 1px solid #ff6691;
    border-radius: 5px;
    text-decoration: none;
    transition: .2s
  }

  #header .global-nav .nav-item .sub-nav ul li a:hover {
    opacity: .6
  }

  #header .global-nav .nav-item .sub-nav ul ul {
    margin: 0 -5px
  }

  #header .global-nav .nav-item .sub-nav ul ul li a {
    color: #ff6691;
    background: #fff
  }
}

#footer,#footer:before {
  /* background:url(/wp/wp-content/themes/tdh/img/bg/pastel-gradient.jpg) fixed; */
  background: #f7f7f7;
}

.for-oneself {
  clear: both;
  margin-bottom: 5px;
  padding-top: 25px
}

.for-oneself img {
  display: block;
  margin: 0 auto
}

@media screen and (min-width: 737px) {
  .for-oneself {
    margin-bottom:25px;
    padding-top: 60px
  }
}

#footer {
  position: relative;
  clear: both;
  background-size: cover
}

#footer:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 150%;
  height: 0;
  margin: -32px 0 0 -75%;
  padding-top: 33%;
  background-size: cover;
  border-radius: 100%;
  z-index: 5
}

#footer .footer-wrapper {
  position: relative;
  padding: 20px;
  z-index: 10
}

#footer .footer-inner .site-title {
}

#footer .footer-inner .site-title .logo {
  margin-bottom: 30px;
}

#footer .footer-inner .site-title .logo a {
  display: inline-block;
  vertical-align: top
}

#footer .footer-inner .site-title .logo img {
  display: block;
  width: min(85%, 360px);
  margin: 0 auto;
  filter: brightness(0.97);
}

#footer .footer-inner .site-title .site-title-inner {font-weight: 400;}

#footer .footer-inner .site-title .site-title-inner p {
  margin-bottom: 0
}

#footer .footer-inner .site-title .site-title-inner .btn {display: flex;justify-content: center;margin: 30px -8px;}

#footer .footer-inner .site-title .site-title-inner .btn a {position: relative;display: block;margin: 0 8px;border: 1px solid #ccc;width: 10em;padding: 10px 10px 10px 0;text-decoration: none;line-height: 1.2;color: #000;}

#footer .footer-inner .site-title .site-title-inner .btn a:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 10px;
  width: 10px;
  height: 4px;
  margin-top: -2px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: skewX(40deg);
}

#footer .footer-inner .site-title .site-title-inner .tel {display: flex;flex-direction: column;align-items: center;line-height: 1.2;}

#footer .footer-inner .site-title .site-title-inner .tel a {
  display: flex;
  align-items: baseline;
  margin-bottom: 30px;
  text-decoration: none;
}

#footer .footer-inner .site-title .site-title-inner .tel .icon {
  font-weight: bold;
}

#footer .footer-inner .site-title .site-title-inner .tel .icon img {display: block;width: 1.6em;margin-right: 8px;}

#footer .footer-inner .site-title .site-title-inner .tel .icon + span {position: relative;}

#footer .footer-inner .site-title .site-title-inner .tel .num {
  display: block;
  color: #ee82ef;
  font-size: 3.3rem;
  font-weight: 500;
}

#footer .footer-inner .site-title .site-title-inner .tel .small {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  display: block;
  font-size: 1.4rem;
}

#footer .footer-inner p {
  margin-bottom: 25px
}

#footer .footer-inner .sns-link {
  display: flex;
  justify-content: center
}

#footer .footer-inner .sns-link a {
  display: block;
  margin: 0 10px
}

#footer .footer-inner .sns-link a img {
  display: block;
  width: 40px;
  border-radius: 100%
}

#footer .footer-inner .kdu a {
  display: inline-block;
  vertical-align: top
}

#footer .footer-inner .kdu a img {
  display: block;
  margin: 0 auto;
  width: 183px
}

#footer .footer-inner .copyright {
  margin-bottom: 0;
  font-size: 1rem
}

#footer .sitemap-link {position: relative;z-index: 5;display: none;}

#footer .pickup-link {position: relative;z-index: 5;display: flex;justify-content: center;flex-wrap: wrap;padding: 20px 10px;font-weight: 400;background: #f197f1;}

#footer .pickup-link a {color: #FFF;font-size: 1.3rem;margin: 5px 10px;text-decoration: none;}

#footer .copyright {
  padding: 15px 0 65px;
  font-size: 1.2rem;
  color: #FFF;
  background: #cc52cd;
  text-align: center;
}



@media screen and (min-width: 737px) {
  #footer,#footer:before {
    /* background:url(/wp/wp-content/themes/tdh/img/bg/pastel-gradient.jpg) fixed; */
  }

  #footer {
    margin-top: -50px;
    background-size: 100% 120%
  }

  #footer:before {
    width: 250%;
    margin: -28px 0 0 -125%;
    background-size: 100% 120%
  }

  #footer .footer-wrapper {
    /* display: flex; */
    /* justify-content: space-between; */
    max-width: 1280px;
    margin: 0 auto;
    padding: 50px 20px
  }

  #footer .footer-inner {
    /* text-align: left; */
  }

  #footer .footer-inner .site-title {
    /* display: flex; */
    /* align-items: center; */
    /* margin-bottom: 30px; */
    /* font-size: 1.5rem; */
    margin-bottom: 40px;
  }

  #footer .footer-inner .site-title .logo {
    /* margin: 0 15px 0 0; */
    margin-bottom: 50px;
  }

  #footer .footer-inner .site-title .logo img {
  /* width: 360px; */
}



#footer .footer-inner .site-title .site-title-inner .tel {flex-direction: row;justify-content: center;}

#footer .footer-inner .site-title .site-title-inner .tel a {margin: 0 15px;pointer-events: none;}

#footer .footer-inner .site-title .site-title-inner .tel .icon {
}

#footer .footer-inner .site-title .site-title-inner .tel .icon img {
}

#footer .footer-inner .site-title .site-title-inner .tel .icon + span {
}

#footer .footer-inner .site-title .site-title-inner .tel .num {
}

#footer .footer-inner .site-title .site-title-inner .tel .small {
}


  

  #footer .footer-inner .sns-link {
    position: absolute;
    left: 20px;
    bottom: 50px
  }

  #footer .footer-inner .sns-link a {
    margin: 0 10px 0 0
  }

  #footer .footer-inner .sns-link a img {
    width: 26px
  }

  #footer .footer-inner .copyright {
    position: absolute;
    left: 20px;
    bottom: 50px
  }

  #footer .pickup-link {
    padding: 30px 10px;
  }
  
  #footer .pickup-link a {
  margin: 5px 30px;
  font-size: 1.4rem;
  }
  
  #footer .sitemap-link {
    display: flex;
    justify-content: center;
    padding: 60px 0;
    color: #FFF;
    font-size: 1.3rem;
    font-weight: 400;
    background: #f197f1;
    border-top: 1px solid #f7bff7;
  }

  #footer .sitemap-link>ul {
  }

  #footer .sitemap-link>ul:not(:first-child) {
  margin-left: 4%;
  }

  #footer .sitemap-link ul .nav-item:not(:first-child) {
    padding-top: 1em
  }

  #footer .sitemap-link ul .nav-item .sub-nav {
    padding-left: 1em;
    font-size: 1.2rem
  }

  #footer .sitemap-link a {
    position: relative;
    text-decoration: none;
    color: #FFF;
  }

  #footer .sitemap-link ul .nav-item .sub-nav ul li ul {
    padding-left: 1em
  }

  #footer .copyright {
    padding: 15px 0;
  }

  #footer a {transition: 0.2s;}

  #footer a:hover {opacity: 0.6;}
}

#cta-nav {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  line-height: 1.2;
  background: #ee82ef;
  z-index: 99997
}

#cta-nav ul {
  display: flex;
  padding-left: 0
}

#cta-nav ul li {
  position: relative;
  flex: auto;
  border-right: 1px solid #fdd7fc
}

#cta-nav ul li a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  color: #fff;
  font-size: 4vw;
  font-family: 'M PLUS Rounded 1c',sans-serif;
  font-weight: 500;
  text-align: center;
  z-index: 1;
  transform: rotate(.03deg)
}

#cta-nav ul li a:before {
  display: block;
  width: 24px;
  height: 23px;
  margin-right: 6px
}

#cta-nav ul li.opencampus a:before {
  background: url(/wp/wp-content/themes/tdh/img/icon/tooth.png) center no-repeat;
  background-size: contain
}

#cta-nav ul li.document a:before {
  background: url(/wp/wp-content/themes/tdh/img/icon/book.png) center no-repeat;
  background-size: contain
}

#cta-nav ul li.pagetop {
  flex: none;
  width: 50px;
  background: #f197f1;
  border-right: none
}

#cta-nav ul li.pagetop a {
  display: block;
  height: 0;
  padding-top: 50px;
  overflow: hidden
}

#cta-nav ul li.pagetop a:before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  margin: 4px 0 0;
  background: 0 0;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: translate(-50%,-50%) rotate(45deg)
}

@media screen and (min-width: 737px) {
  #cta-nav {
    left:auto;
    right: 0;
    top: 20%;
    bottom: 0;
    width: auto;
    background: 0 0;
    z-index: 99999
  }

  #cta-nav ul {
    flex-direction: column
  }

  #cta-nav ul li {
    margin-bottom: 10px;
    border: none
  }

  #cta-nav ul li a {
    flex-direction: column;
    font-size: 1.2rem;
    width: 80px;
    height: 80px;
    background: #ee82ef;
    letter-spacing: -.05em;
    transform-origin: 100% 50%;
    transition: .2s
  }

  #cta-nav ul li a:hover {
    transform: scale(1.1)
  }

  #cta-nav ul li a:before {
    width: 33px;
    height: 33px;
    margin: 0 auto 5px
  }

  #cta-nav ul li.pagetop {
    position: fixed;
    right: 0;
    bottom: 50px;
    width: auto;
    background: 0 0
  }

  #cta-nav ul li.pagetop a {
    display: flex;
    height: 80px;
    padding: 0
  }

  #cta-nav ul li.pagetop a:before {
    position: static;
    width: 12px;
    height: 12px;
    margin: 5px 0;
    transform: rotate(45deg)
  }
}

div.alignleft img,div.alignright img,iframe {
  display: block
}

#sns-nav {
  display: none
}

#main {
  margin-bottom: 80px;
  letter-spacing: .025em
}

@media screen and (min-width: 737px) {
  #sns-nav {
    position:fixed;
    top: 50%;
    left: 15px;
    display: block;
    transform: translateY(-50%);
    z-index: 99999;
    transition: .4s
  }

  #sns-nav.end {
    left: -60px
  }

  #sns-nav ul li {
    margin: 15px 0
  }

  #sns-nav ul li a {
    display: block;
    transition: .2s
  }

  #sns-nav ul li a:hover {
    opacity: .6
  }

  #sns-nav ul li img {
    display: block;
    width: 48px;
    border-radius: 100%
  }

  #main {
    margin-bottom: 150px;
    padding-top: 85px
  }
}

p {
  margin-bottom: 1.5em
}

p.indent {
  text-indent: -1em;
  padding-left: 1em
}

p.indent-2em,p.indent2em {
  text-indent: -2em;
  padding-left: 2em
}

p.indent-3em,p.indent3em {
  text-indent: -3em;
  padding-left: 3em
}

p.indent-4em,p.indent4em {
  text-indent: -4em;
  padding-left: 4em
}

p.indent-5em,p.indent5em {
  text-indent: -5em;
  padding-left: 5em
}

p.indent-6em,p.indent6em {
  text-indent: -6em;
  padding-left: 6em
}

p.indent7em {
  text-indent: -7em;
  padding-left: 7em
}

p.indent8em {
  text-indent: -8em;
  padding-left: 8em
}

strong {
  font-weight: 500
}

.alignright {
  text-align: right
}

.alignleft {
  text-align: left
}

.alignleft.top-shift,.alignright.top-shift {
  margin-top: -15px
}

.aligncenter {
  text-align: center
}

.fs-mini {
  font-size: 70%!important
}

.fs-small {
  font-size: 80%!important
}

.fs-large,.large {
  font-size: 112%!important
}

.fs-big {
  font-size: 125%!important
}

.fs-bigger,.medium {
  font-size: 138%!important
}

.fc-blank {
  color: #000
}

.error,.fc-red,.font-red {
  color: red
}

.fc-pink {
  color: #ff6691
}

.fc-orange {
  color: #f90
}

.fc-blue {
  color: #00f
}

.fc-green {
  color: #00c300
}

.fc-gray {
  color: #999
}

a {
  color: #262626;
  text-decoration: underline;
  cursor: pointer
}

img {
  image-rendering: -webkit-optimize-contrast;
  max-width: 100%;
  height: auto
}

div.alignright,img.alignright {
  float: right;
  clear: right;
  margin: 0 0 40px 40px;
  text-align: center
}

div.alignleft,img.alignleft {
  float: left;
  clear: left;
  margin: 0 40px 40px 0;
  text-align: center
}

img.aligncenter {
  display: block;
  margin: 0 auto
}

@media screen and (max-width: 736px) {
  .aligncenter-m {
    text-align:center
  }

  div.alignleft,div.alignleft img,div.alignright,div.alignright img,img.aligncenter,img.alignleft,img.alignright {
    display: block;
    float: none;
    clear: both;
    margin: 0 auto 1.5em;
    font-size: 80%
  }

  .hide-m {
    display: none!important;
  }
}

ol:not(.reset),ul:not(.reset) {
  margin-bottom: 1.5em
}

ul:not(.reset)>li {
  position: relative;
  padding-left: 1.2em
}

ol:not(.reset)>li:not(:last-child),ul:not(.reset)>li:not(:last-child) {
  margin-bottom: .25em
}

ul:not(.reset)>li:before {
  position: absolute;
  top: .8em;
  left: .4em;
  width: 4px;
  height: 4px;
  margin: -3px 0 0 -1px;
  background: #000;
  border-radius: 100%
}

ol:not(.reset)>li {
  list-style: decimal;
  margin-left: 1.5em
}

ol.list-mark-alpha li {
  list-style: upper-alpha
}

table {
  width: 100%;
  margin-bottom: 1.5em;
  background: #fff;
  border-top: 1px solid #999;
  border-left: 1px solid #999
}

table td,table th {
  padding: 8px 10px;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999
}

table th {
  font-weight: 400;
  background: #fff8dd
}

.mt0 {
  margin-top: 0!important
}

.mt5 {
  margin-top: 5px!important
}

.mt10 {
  margin-top: 10px!important
}

.mt15 {
  margin-top: 15px!important
}

.mt20 {
  margin-top: 20px!important
}

.mt25 {
  margin-top: 25px!important
}

.mt30 {
  margin-top: 30px!important
}

.mt35 {
  margin-top: 35px!important
}

.mt40 {
  margin-top: 40px!important
}

.mt45 {
  margin-top: 45px!important
}

.mt50 {
  margin-top: 50px!important
}

.mr0 {
  margin-right: 0!important
}

.mr5 {
  margin-right: 5px!important
}

.mr10 {
  margin-right: 10px!important
}

.mr15 {
  margin-right: 15px!important
}

.mr20 {
  margin-right: 20px!important
}

.mr25 {
  margin-right: 25px!important
}

.mr30 {
  margin-right: 30px!important
}

.mr35 {
  margin-right: 35px!important
}

.mr40 {
  margin-right: 40px!important
}

.mr45 {
  margin-right: 45px!important
}

.mr50 {
  margin-right: 50px!important
}

.mb0,.none {
  margin-bottom: 0!important
}

.mb5 {
  margin-bottom: 5px!important
}

.mb10 {
  margin-bottom: 10px!important
}

.mb15 {
  margin-bottom: 15px!important
}

.mb20 {
  margin-bottom: 20px!important
}

.mb25 {
  margin-bottom: 25px!important
}

.mb30 {
  margin-bottom: 30px!important
}

.mb35 {
  margin-bottom: 35px!important
}

.mb40 {
  margin-bottom: 40px!important
}

.mb45 {
  margin-bottom: 45px!important
}

.mb50 {
  margin-bottom: 50px!important
}

.ml0 {
  margin-left: 0!important
}

.ml5 {
  margin-left: 5px!important
}

.ml10 {
  margin-left: 10px!important
}

.ml15 {
  margin-left: 15px!important
}

.ml20 {
  margin-left: 20px!important
}

.ml25 {
  margin-left: 25px!important
}

.ml30 {
  margin-left: 30px!important
}

.ml35 {
  margin-left: 35px!important
}

.ml40 {
  margin-left: 40px!important
}

.ml45 {
  margin-left: 45px!important
}

.ml50 {
  margin-left: 50px!important
}

.pt0 {
  padding-top: 0!important
}

.pt5 {
  padding-top: 5px!important
}

.pt10 {
  padding-top: 10px!important
}

.pt15 {
  padding-top: 15px!important
}

.pt20 {
  padding-top: 20px!important
}

.pt25 {
  padding-top: 25px!important
}

.pt30 {
  padding-top: 30px!important
}

.pt35 {
  padding-top: 35px!important
}

.pt40 {
  padding-top: 40px!important
}

.pt45 {
  padding-top: 45px!important
}

.pt50 {
  padding-top: 50px!important
}

.pr0 {
  padding-right: 0!important
}

.pr5 {
  padding-right: 5px!important
}

.pr10 {
  padding-right: 10px!important
}

.pr15 {
  padding-right: 15px!important
}

.pr20 {
  padding-right: 20px!important
}

.pr25 {
  padding-right: 25px!important
}

.pr30 {
  padding-right: 30px!important
}

.pr35 {
  padding-right: 35px!important
}

.pr40 {
  padding-right: 40px!important
}

.pr45 {
  padding-right: 45px!important
}

.pr50 {
  padding-right: 50px!important
}

.pb0 {
  padding-bottom: 0!important
}

.pb5 {
  padding-bottom: 5px!important
}

.pb10 {
  padding-bottom: 10px!important
}

.pb15 {
  padding-bottom: 15px!important
}

.pb20 {
  padding-bottom: 20px!important
}

.pb25 {
  padding-bottom: 25px!important
}

.pb30 {
  padding-bottom: 30px!important
}

.pb35 {
  padding-bottom: 35px!important
}

.pb40 {
  padding-bottom: 40px!important
}

.pb45 {
  padding-bottom: 45px!important
}

.pb50 {
  padding-bottom: 50px!important
}

.pl0 {
  padding-left: 0!important
}

.pl5 {
  padding-left: 5px!important
}

.pl10 {
  padding-left: 10px!important
}

.pl15 {
  padding-left: 15px!important
}

.pl20 {
  padding-left: 20px!important
}

.pl25 {
  padding-left: 25px!important
}

.pl30 {
  padding-left: 30px!important
}

.pl35 {
  padding-left: 35px!important
}

.pl40 {
  padding-left: 40px!important
}

.pl45 {
  padding-left: 45px!important
}

.pl50 {
  padding-left: 50px!important
}

@media (min-width: 737px) {
  .mt0-d {
    margin-top:0!important
  }

  .mt5-d {
    margin-top: 5px!important
  }

  .mt10-d {
    margin-top: 10px!important
  }

  .mt15-d {
    margin-top: 15px!important
  }

  .mt20-d {
    margin-top: 20px!important
  }

  .mt25-d {
    margin-top: 25px!important
  }

  .mt30-d {
    margin-top: 30px!important
  }

  .mt35-d {
    margin-top: 35px!important
  }

  .mt40-d {
    margin-top: 40px!important
  }

  .mt45-d {
    margin-top: 45px!important
  }

  .mt50-d {
    margin-top: 50px!important
  }

  .mr0-d {
    margin-right: 0!important
  }

  .mr5-d {
    margin-right: 5px!important
  }

  .mr10-d {
    margin-right: 10px!important
  }

  .mr15-d {
    margin-right: 15px!important
  }

  .mr20-d {
    margin-right: 20px!important
  }

  .mr25-d {
    margin-right: 25px!important
  }

  .mr30-d {
    margin-right: 30px!important
  }

  .mr35-d {
    margin-right: 35px!important
  }

  .mr40-d {
    margin-right: 40px!important
  }

  .mr45-d {
    margin-right: 45px!important
  }

  .mr50-d {
    margin-right: 50px!important
  }

  .mb0-d {
    margin-bottom: 0!important
  }

  .mb5-d {
    margin-bottom: 5px!important
  }

  .mb10-d {
    margin-bottom: 10px!important
  }

  .mb15-d {
    margin-bottom: 15px!important
  }

  .mb20-d {
    margin-bottom: 20px!important
  }

  .mb25-d {
    margin-bottom: 25px!important
  }

  .mb30-d {
    margin-bottom: 30px!important
  }

  .mb35-d {
    margin-bottom: 35px!important
  }

  .mb40-d {
    margin-bottom: 40px!important
  }

  .mb45-d {
    margin-bottom: 45px!important
  }

  .mb50-d {
    margin-bottom: 50px!important
  }

  .ml0-d {
    margin-left: 0!important
  }

  .ml5-d {
    margin-left: 5px!important
  }

  .ml10-d {
    margin-left: 10px!important
  }

  .ml15-d {
    margin-left: 15px!important
  }

  .ml20-d {
    margin-left: 20px!important
  }

  .ml25-d {
    margin-left: 25px!important
  }

  .ml30-d {
    margin-left: 30px!important
  }

  .ml35-d {
    margin-left: 35px!important
  }

  .ml40-d {
    margin-left: 40px!important
  }

  .ml45-d {
    margin-left: 45px!important
  }

  .ml50-d {
    margin-left: 50px!important
  }

  .pt0-d {
    padding-top: 0!important
  }

  .pt5-d {
    padding-top: 5px!important
  }

  .pt10-d {
    padding-top: 10px!important
  }

  .pt15-d {
    padding-top: 15px!important
  }

  .pt20-d {
    padding-top: 20px!important
  }

  .pt25-d {
    padding-top: 25px!important
  }

  .pt30-d {
    padding-top: 30px!important
  }

  .pt35-d {
    padding-top: 35px!important
  }

  .pt40-d {
    padding-top: 40px!important
  }

  .pt45-d {
    padding-top: 45px!important
  }

  .pt50-d {
    padding-top: 50px!important
  }

  .pr0-d {
    padding-right: 0!important
  }

  .pr5-d {
    padding-right: 5px!important
  }

  .pr10-d {
    padding-right: 10px!important
  }

  .pr15-d {
    padding-right: 15px!important
  }

  .pr20-d {
    padding-right: 20px!important
  }

  .pr25-d {
    padding-right: 25px!important
  }

  .pr30-d {
    padding-right: 30px!important
  }

  .pr35-d {
    padding-right: 35px!important
  }

  .pr40-d {
    padding-right: 40px!important
  }

  .pr45-d {
    padding-right: 45px!important
  }

  .pr50-d {
    padding-right: 50px!important
  }

  .pb0-d {
    padding-bottom: 0!important
  }

  .pb5-d {
    padding-bottom: 5px!important
  }

  .pb10-d {
    padding-bottom: 10px!important
  }

  .pb15-d {
    padding-bottom: 15px!important
  }

  .pb20-d {
    padding-bottom: 20px!important
  }

  .pb25-d {
    padding-bottom: 25px!important
  }

  .pb30-d {
    padding-bottom: 30px!important
  }

  .pb35-d {
    padding-bottom: 35px!important
  }

  .pb40-d {
    padding-bottom: 40px!important
  }

  .pb45-d {
    padding-bottom: 45px!important
  }

  .pb50-d {
    padding-bottom: 50px!important
  }

  .pl0-d {
    padding-left: 0!important
  }

  .pl5-d {
    padding-left: 5px!important
  }

  .pl10-d {
    padding-left: 10px!important
  }

  .pl15-d {
    padding-left: 15px!important
  }

  .pl20-d {
    padding-left: 20px!important
  }

  .pl25-d {
    padding-left: 25px!important
  }

  .pl30-d {
    padding-left: 30px!important
  }

  .pl35-d {
    padding-left: 35px!important
  }

  .pl40-d {
    padding-left: 40px!important
  }

  .pl45-d {
    padding-left: 45px!important
  }

  .pl50-d {
    padding-left: 50px!important
  }
}

@media (max-width: 736px) {
  .mt0-m {
    margin-top:0!important
  }

  .mt5-m {
    margin-top: 5px!important
  }

  .mt10-m {
    margin-top: 10px!important
  }

  .mt15-m {
    margin-top: 15px!important
  }

  .mt20-m {
    margin-top: 20px!important
  }

  .mt25-m {
    margin-top: 25px!important
  }

  .mt30-m {
    margin-top: 30px!important
  }

  .mt35-m {
    margin-top: 35px!important
  }

  .mt40-m {
    margin-top: 40px!important
  }

  .mt45-m {
    margin-top: 45px!important
  }

  .mt50-m {
    margin-top: 50px!important
  }

  .mr0-m {
    margin-right: 0!important
  }

  .mr5-m {
    margin-right: 5px!important
  }

  .mr10-m {
    margin-right: 10px!important
  }

  .mr15-m {
    margin-right: 15px!important
  }

  .mr20-m {
    margin-right: 20px!important
  }

  .mr25-m {
    margin-right: 25px!important
  }

  .mr30-m {
    margin-right: 30px!important
  }

  .mr35-m {
    margin-right: 35px!important
  }

  .mr40-m {
    margin-right: 40px!important
  }

  .mr45-m {
    margin-right: 45px!important
  }

  .mr50-m {
    margin-right: 50px!important
  }

  .mb0-m {
    margin-bottom: 0!important
  }

  .mb5-m {
    margin-bottom: 5px!important
  }

  .mb10-m {
    margin-bottom: 10px!important
  }

  .mb15-m {
    margin-bottom: 15px!important
  }

  .mb20-m {
    margin-bottom: 20px!important
  }

  .mb25-m {
    margin-bottom: 25px!important
  }

  .mb30-m {
    margin-bottom: 30px!important
  }

  .mb35-m {
    margin-bottom: 35px!important
  }

  .mb40-m {
    margin-bottom: 40px!important
  }

  .mb45-m {
    margin-bottom: 45px!important
  }

  .mb50-m {
    margin-bottom: 50px!important
  }

  .ml0-m {
    margin-left: 0!important
  }

  .ml5-m {
    margin-left: 5px!important
  }

  .ml10-m {
    margin-left: 10px!important
  }

  .ml15-m {
    margin-left: 15px!important
  }

  .ml20-m {
    margin-left: 20px!important
  }

  .ml25-m {
    margin-left: 25px!important
  }

  .ml30-m {
    margin-left: 30px!important
  }

  .ml35-m {
    margin-left: 35px!important
  }

  .ml40-m {
    margin-left: 40px!important
  }

  .ml45-m {
    margin-left: 45px!important
  }

  .ml50-m {
    margin-left: 50px!important
  }

  .pt0-m {
    padding-top: 0!important
  }

  .pt5-m {
    padding-top: 5px!important
  }

  .pt10-m {
    padding-top: 10px!important
  }

  .pt15-m {
    padding-top: 15px!important
  }

  .pt20-m {
    padding-top: 20px!important
  }

  .pt25-m {
    padding-top: 25px!important
  }

  .pt30-m {
    padding-top: 30px!important
  }

  .pt35-m {
    padding-top: 35px!important
  }

  .pt40-m {
    padding-top: 40px!important
  }

  .pt45-m {
    padding-top: 45px!important
  }

  .pt50-m {
    padding-top: 50px!important
  }

  .pr0-m {
    padding-right: 0!important
  }

  .pr5-m {
    padding-right: 5px!important
  }

  .pr10-m {
    padding-right: 10px!important
  }

  .pr15-m {
    padding-right: 15px!important
  }

  .pr20-m {
    padding-right: 20px!important
  }

  .pr25-m {
    padding-right: 25px!important
  }

  .pr30-m {
    padding-right: 30px!important
  }

  .pr35-m {
    padding-right: 35px!important
  }

  .pr40-m {
    padding-right: 40px!important
  }

  .pr45-m {
    padding-right: 45px!important
  }

  .pr50-m {
    padding-right: 50px!important
  }

  .pb0-m {
    padding-bottom: 0!important
  }

  .pb5-m {
    padding-bottom: 5px!important
  }

  .pb10-m {
    padding-bottom: 10px!important
  }

  .pb15-m {
    padding-bottom: 15px!important
  }

  .pb20-m {
    padding-bottom: 20px!important
  }

  .pb25-m {
    padding-bottom: 25px!important
  }

  .pb30-m {
    padding-bottom: 30px!important
  }

  .pb35-m {
    padding-bottom: 35px!important
  }

  .pb40-m {
    padding-bottom: 40px!important
  }

  .pb45-m {
    padding-bottom: 45px!important
  }

  .pb50-m {
    padding-bottom: 50px!important
  }

  .pl0-m {
    padding-left: 0!important
  }

  .pl5-m {
    padding-left: 5px!important
  }

  .pl10-m {
    padding-left: 10px!important
  }

  .pl15-m {
    padding-left: 15px!important
  }

  .pl20-m {
    padding-left: 20px!important
  }

  .pl25-m {
    padding-left: 25px!important
  }

  .pl30-m {
    padding-left: 30px!important
  }

  .pl35-m {
    padding-left: 35px!important
  }

  .pl40-m {
    padding-left: 40px!important
  }

  .pl45-m {
    padding-left: 45px!important
  }

  .pl50-m {
    padding-left: 50px!important
  }
}

.clear {
  clear: both
}

@media screen and (min-width: 737px) {
  .aligncenter-d {
    text-align:center
  }

  .hide-d {
    display: none!important;
  }
}

.line-banner {
  position: fixed;
  left: 0;
  bottom: 50px;
  width: 100%;
  padding: 0 5px;
  line-height: 1.2;
  text-align: center;
  overflow: hidden;
  z-index: 99997
}

.line-banner .line-banner-inner {
  position: relative;
  display: none;
  vertical-align: top
}

.line-banner a {
  display: block;
  max-width: 426px
}

.line-banner a img {
  display: block
}

.line-banner .close {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.85em;
  height: 1.85em;
  color: #fff;
  font-size: 120%;
  font-weight: 700;
  background: #444;
  border-radius: 100%;
  cursor: pointer
}

.line-banner .close:before {
  content: '×'
}

@media screen and (min-width: 737px) {
  .line-banner {
    display:flex;
    left: auto;
    right: 100px;
    bottom: 15px;
    width: auto;
    padding: 0
  }

  .line-banner a {
    transition: .2s
  }

  .line-banner a:hover {
    opacity: .8;
    filter: contrast(1.2)
  }

  .line-banner .close {
    transition: .2s
  }

  .line-banner .close:hover {
    opacity: .8
  }
}
