.link, body {
  position: relative;
  font-family: "Noto Sans JP", "Noto Sans CJK JP", "Noto Sans Japanese", 
  "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", ヒラギノ角ゴシック, 
  "Hiragino Sans", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.btn-theme, p {
  line-height: 1.4
}
.btn-theme.active.focus, .btn-theme.active:focus, .btn-theme.focus, .btn-theme:active.focus, .btn-theme:active:focus, .btn-theme:focus, :active, :focus, a, a:active, a:focus, a:hover {
  outline: 0
}
.btn-theme:hover, .progress-box .progress-bar {
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .nav-item-child, .link, a, body, em, h1, h2, h3, h4, h5, h6, li, li a, p, span {
  font-family: "Noto Sans JP", "Noto Sans CJK JP", "Noto Sans Japanese", 
  "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", ヒラギノ角ゴシック, 
  "Hiragino Sans", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.header .nav-item-hover:after, .link:after, .work .work-overlay:before {
  content: " "
}
.back-to-top, .header .nav-item-child, .link {
  text-transform: uppercase
}
.back-to-top:focus, .back-to-top:hover, .btn-theme.focus, .btn-theme:focus, .btn-theme:hover, .content-wrapper-link, .header .logo-wrap:focus, .header .logo-wrap:hover, a:active, a:focus, a:hover, h1 > a:focus, h2 > a:focus, h3 > a:focus, h4 > a:focus, h5 > a:focus, h6 > a:focus {
  text-decoration: none
}
.container-full-width:after, .container-sm:after {
  clear: both
}
html {
  overflow-x: hidden
}
body, html, html a {
  -webkit-font-smoothing: antialiased
}
p {
    font-size: 16px;
    font-weight: 400;
    color: #474747;
    margin-bottom: 10px;
	line-height: 1.5em;
}
em, li, li a {
  font-size: 16px;
  font-weight: normal;
  color: #515769
}

.link {
  font-size: 16px;
  font-weight: 600
}
.back-to-top, .form-control, span {
  font-weight: 400
}
.link:after {
  position: absolute;
  top: 8px;
  right: -15px;
  width: 9px;
  height: 2px;
  background: #17bed2
}
span {
  font-size: 14px;
  color: #bfc1c7
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  color: #515769;
  line-height: 1.4;
  margin: 0 0 15px
}
h1 > a, h2 > a, h3 > a, h4 > a, h5 > a, h6 > a {
  color: #515769
}
h1 > a:hover, h2 > a:hover, h3 > a:hover, h4 > a:hover, h5 > a:hover, h6 > a:hover {
  color: #999caa;
  text-decoration: none
}
h1 {
  font-size: 40px
}
h2 {
  font-size: 22px;
}
h2 {
  border-bottom: solid 3px white;
  position: relative;
}
h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #17bed2;
  bottom: -3px;
  width: 5%;
}
h3 {
  font-size: 22px;
}
h3 {
  border-bottom: solid 3px #fafafa;
  position: relative;
}
h3:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #17bed2;
  bottom: -3px;
  width: 5%;
}
h4 {
  font-size: 18px
}
#contact h4 {
  font-size: 16px
}
::selection {
  color: #fff;
  background: #17bed2;
  text-shadow: none
}
::-webkit-selection {
  color: #fff;
  background: #17bed2;
  text-shadow: none
}
::-moz-selection {
  color: #fff;
  background: #17bed2;
  text-shadow: none
}
.section-seperator {
  border-bottom: 1px solid #edf0f2
}
.content-wrapper-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  z-index: 3
}
.btn-icon, .btn-theme, .work {
  position: relative
}
.btn-theme, .social-icons {
  display: inline-block;
  vertical-align: middle;
  text-align: center
}
.btn-theme {
  background-image: none;
  border-style: solid;
  white-space: nowrap;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none
}
.btn-theme:hover {
  transition-duration: .3s
}
.btn-theme.active, .btn-theme:active {
  background-image: none;
  outline: 0
}
.btn-theme.disabled, .btn-theme[disabled], fieldset[disabled] .btn-theme {
  cursor: not-allowed;
  box-shadow: none;
  opacity: .65;
  pointer-events: none
}
.btn-icon {
  top: 1px;
  margin-right: 10px
}
.btn-white-bg {
  color: #515769;
  background: #fff;
  border-color: transparent;
  border-width: 0
}
.btn-white-bg.focus, .btn-white-bg:focus, .btn-white-bg:hover {
  color: #fff;
  background: #17bed2;
  border-color: transparent
}
.btn-white-brd {
  color: #fff;
  background: 0 0;
  border-color: #fff;
  border-width: 2px
}
.btn-white-brd.focus, .btn-white-brd:focus, .btn-white-brd:hover {
  color: #515769;
  background: #fff;
  border-color: #fff
}
.btn-default-bg {
  color: #515769;
  background: #f3f4f5;
  border-color: transparent;
  border-width: 0
}
.btn-default-bg.focus, .btn-default-bg:focus, .btn-default-bg:hover {
  color: #fff;
  background: #17bed2;
  border-color: transparent
}
.btn-theme-sm {
  font-size: 13px;
  font-weight: 600;
  padding: 15px 40px
}
.btn-theme-md {
  font-size: 15px;
  font-weight: 600;
  padding: 20px 30px
}
.progress-box .progress {
  box-shadow: none;
  height: 3px
}
.progress-box .progress-bar {
  transition-duration: 2s
}
.social-icons {
  width: 40px;
  height: 40px;
  font-size: 16px;
  color: #fff;
  border-radius: 50%;
  padding: 11px;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.work .work-overlay:before, .work .work-popup-overlay {
  top: 0;
  width: 100%;
  height: 100%;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1);
  transition-duration: .3s;
  left: 0
}
.social-icons:hover {
  color: #515769;
  background: #fff;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.promo-block {
  padding: 120px 0 130px
}
.promo-block .promo-block-title {
  font-size: 70px;
  color: #fff;
  line-height: 1
}
@media (max-width:480px) {
  .promo-block .promo-block-title {
    font-size: 50px
  }
}
.promo-block .promo-block-text {
  font-size: 25px;
  color: #fff
}
.promo-block .promo-block-divider {
  border-bottom: 1px solid rgba(255, 255, 255, .4);
  padding-bottom: 20px;
  margin-bottom: 35px
}
.service {
  background: #fff;
  padding: 30px
}
.service .service-element, .service .service-info {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.service .service-icon {
  display: block;
  font-size: 30px;
  color: #999caa;
  margin-bottom: 30px
}
.service:hover .service-element {
  opacity: 0;
  -webkit-transform: translate3d(0, -100%, 0);
  -moz-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.service:hover .service-info {
  -webkit-transform: translate3d(0, -30%, 0);
  -moz-transform: translate3d(0, -30%, 0);
  transform: translate3d(0, -30%, 0);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.work {
  display: block
}
.work .work-overlay {
  position: relative;
  cursor: pointer
}
.work .work-overlay:before {
  position: absolute;
  background: 0 0
}
.work:hover .work-overlay:before {
  background: rgba(0, 0, 0, .5);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.work .work-popup-overlay {
  position: fixed;
  right: 0;
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow-x: hidden;
  background: rgba(81, 87, 105, .4)
}
.work .work-popup-overlay-show {
  opacity: 1;
  visibility: visible;
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.work .work-popup-content {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 730px;
  height: auto;
  display: block;
  background: #fff;
  padding: 30px;
  margin: 0 auto;
  -webkit-transform: translate3d(0, -50%, 0);
  -moz-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0)
}
.header .logo-img, .header .logo-img-main, .header .logo-wrap {
  display: inline-block
}
.work .work-popup-content-divider {
  border-right: 1px solid #cdcecf
}
@media (max-width:768px) {
  .work .work-popup-content {
    width: 95%
  }
  .work .work-popup-content-divider {
    border-right: none;
    border-bottom: 1px solid #cdcecf
  }
}
.work .work-popup-close {
  float: right;
  font-size: 13px;
  font-weight: 700;
  color: #c5c6cb;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.work .work-popup-close:hover {
  color: #aaacb3;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.work .work-popup-tag {
  margin: 0
}
.work .work-popup-tag-item {
  padding: 0 2px
}
.work .work-popup-tag-link {
  font-size: 13px
}
.footer .footer-logo {
  width: 64px;
  height: auto
}
.navbar-fixed-top .navbar-collapse {
  max-height: 100%
}
.header .navbar {
  margin-bottom: 0;
  border-bottom: 1px solid rgba(255, 255, 255, .2);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .navbar-toggle {
  width: 25px;
  height: 25px;
  border: none;
  padding: 0;
  margin: 35px 0
}
.header .navbar-toggle .toggle-icon {
  position: relative;
  width: 21px;
  height: 1px;
  display: inline-block;
  background: #515769;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .navbar-toggle .toggle-icon:after, .header .navbar-toggle .toggle-icon:before {
  position: absolute;
  left: 0;
  background: #515769;
  content: " "
}
.header .navbar-toggle .toggle-icon:before {
  width: 10px;
  height: 1px;
  bottom: 10px;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  transform: rotate(0);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .navbar-toggle .toggle-icon:after {
  width: 16px;
  height: 1px;
  top: -5px;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  transform: rotate(0);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .navbar-toggle:hover .toggle-icon {
  background: #17bed2;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .navbar-toggle:hover .toggle-icon:after, .header .navbar-toggle:hover .toggle-icon:before {
  width: 21px;
  height: 1px;
  background: #17bed2;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .logo-img-active, .header .logo-img-main, .header .nav-item.active .nav-item-hover:after, .header .nav-item:hover .nav-item-hover:after {
  transition-duration: .4s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .navbar-toggle:hover .toggle-icon.is-clicked {
  background: rgba(81, 87, 105, 0)
}
.header .logo {
  width: 100px;
  height: 100px;
  float: left;
  max-height: 95px;
  line-height: 65px
}
.header .logo-wrap {
  padding: 15px 0
}
.header .logo-img {
  width: 64px;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  vertical-align: middle
}
.header .logo-img-active {
  display: none
}
.header .nav-item, .header .nav-item-child {
  display: block;
  position: relative
}
.header .navbar-nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none
}
.header .nav-item:last-child .nav-item-child {
  padding-right: 0
}
.header .nav-item.active .nav-item-hover:after, .header .nav-item:hover .nav-item-hover:after {
  opacity: 1
}
.header .nav-item-child {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  line-height: 55px;
  padding: 20px;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.header .nav-item-child:focus, .header .nav-item-child:hover {
  background: inherit
}
.header .nav-item-hover {
  position: relative
}
.header .nav-item-hover:after {
  position: absolute;
  top: 45px;
  left: 0;
  width: 9px;
  height: 2px;
  background: #17bed2;
  opacity: 0;
  transition-duration: .4s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
@media (max-width:991px) {
  .header {
    background: #fff
  }
  .header .navbar-toggle {
    display: block
  }
  .header .navbar-collapse.collapse {
    display: none !important
  }
  .header .navbar-collapse.collapse.in {
    display: block !important
  }
  .header .nav-collapse {
    padding-left: 0;
    padding-right: 0
  }
  .header .navbar-nav {
    margin: 0;
    float: none
  }
  .header .navbar-nav .nav-item {
    float: none
  }
  .header .menu-container:after, .header .menu-container:before {
    content: " ";
    display: table
  }
  .header .menu-container:after {
    clear: both
  }
  .header .logo .logo-img-main {
    display: none
  }
  .header .logo .logo-img-active {
    display: inline-block
  }
  .header .nav-item-child {
    color: #515769;
    line-height: 1.4;
    padding: 12px 12px 12px 15px
  }
  .header .nav-item-hover:after {
    position: absolute;
    top: 19px
  }
}
@media (max-width:767px) {
  .header .menu-container {
    padding-left: 15px;
    padding-right: 15px;
    margin-left: 0;
    margin-right: 0
  }
  .header .navbar > .container, .header .navbar > .container > .nav-collapse {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0
  }
  .header .navbar > .container {
    width: auto
  }
}
@media (min-width:992px) {
  .header .navbar-nav-right {
    float: right
  }
  .page-on-scroll .header .navbar {
    background: #fff;
    border-bottom-color: #f0f0f0;
    transition-duration: .3s;
    transition-property: all;
    transition-timing-function: cubic-bezier(.7, 1, .7, 1)
  }
  .page-on-scroll .header .logo-img-active, .page-on-scroll .header .logo-img-main {
    transition-duration: .4s;
    transition-property: all;
    transition-timing-function: cubic-bezier(.7, 1, .7, 1)
  }
  .page-on-scroll .header .logo-img-main {
    display: none
  }
  .page-on-scroll .header .logo-img-active {
    display: inline-block
  }
  .page-on-scroll .header .nav-item-child {
    color: #515769;
    transition-duration: .3s;
    transition-property: all;
    transition-timing-function: cubic-bezier(.7, 1, .7, 1)
  }
}
.back-to-top, .back-to-top:hover {
  color: #fff;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.back-to-top {
  position: fixed;
  right: 10px;
  bottom: 10px;
  display: inline-block;
  z-index: 9;
  width: 40px;
  height: 40px;
  font-size: 11px;
  text-align: center;
  line-height: 3;
  letter-spacing: 1px;
  background: #515769;
  border-radius: 3px;
  visibility: hidden;
  opacity: 0;
  padding: 5px;
  -webkit-transform: translate3d(0, 50px, 0);
  -moz-transform: translate3d(0, 50px, 0);
  transform: translate3d(0, 50px, 0);
  transition-duration: .3s
}
.container-full-width:after, .container-full-width:before, .container-sm:after, .container-sm:before {
  content: " ";
  display: table
}
.back-to-top:hover {
  transition-duration: .3s
}
.back-to-top.back-to-top-is-visible {
  visibility: visible;
  opacity: .6;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.back-to-top.back-to-top-is-visible:hover {
  opacity: 1;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.back-to-top.back-to-top-fade-out {
  opacity: .4
}
.back-to-top.back-to-top-fade-out:hover {
  opacity: 1;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.form-control {
  height: 50px;
  font-size: 14px;
  color: #a6a7aa;
  background: #fafafa;
  border: none;
  box-shadow: none;
  border-radius: 0;
  padding-left: 15px
}
.form-control::-moz-placeholder {
  color: #a6a7aa
}
.form-control:-ms-input-placeholder {
  color: #a6a7aa
}
.form-control::-webkit-input-placeholder {
  color: #a6a7aa
}
.form-control:focus {
  color: #515769;
  box-shadow: none
}
.form-control:focus::-moz-placeholder {
  color: #515769
}
.form-control:focus:-ms-input-placeholder {
  color: #515769
}
.form-control:focus::-webkit-input-placeholder {
  color: #515769
}
.color-base {
  color: #17bed2 !important
}
.color-white {
  color: #fff !important
}
.color-heading {
  color: #515769 !important
}
.color-subtitle {
  color: #a6a7aa !important
}
.color-link {
  color: #81848f !important
}
.color-link-hover {
  color: #999caa !important
}
.color-sky-light {
  color: #fafafa !important
}
.bg-color-base {
  background: #17bed2 !important
}
.bg-color-white {
  background: #fff !important
}
.bg-color-heading {
  background: #515769 !important
}
.bg-color-subtitle {
  background: #a6a7aa !important
}
.bg-color-link {
  background: #81848f !important
}
.bg-color-link-hover {
  background: #999caa !important
}
.bg-color-sky-light {
  background: #fafafa !important
}
.row-space-2 {
  margin-right: -2px;
  margin-left: -2px
}
.container-full-width, .container-sm {
  margin-right: auto;
  margin-left: auto
}
.row-space-2 > [class*=col-] {
  padding-left: 2px;
  padding-right: 2px
}
.container-sm {
  padding-right: 15px;
  padding-left: 15px
}
@media (min-width:768px) {
  .container-sm {
    width: 750px
  }
}
@media (min-width:1200px) {
  .container-sm {
    width: 970px
  }
}
.content {
  padding-top: 40px;
  padding-bottom: 40px
}
.content-sm {
  padding-top: 60px;
  padding-bottom: 60px
}
.content-md {
  padding-top: 80px;
  padding-bottom: 80px
}
.content-lg {
  padding-top: 100px;
  padding-bottom: 100px
}
.full-width {
  width: 100%;
  height: auto
}
.fweight-300 {
  font-weight: 300 !important
}
.fweight-400 {
  font-weight: 400 !important
}
.fweight-500 {
  font-weight: 500 !important
}
.fweight-600 {
  font-weight: 600 !important
}
.fweight-700 {
  font-weight: 700 !important
}
.margin-l-0 {
  margin-left: 0 !important
}
.margin-l-5 {
  margin-left: 5px !important
}
.margin-l-10 {
  margin-left: 10px !important
}
.margin-l-20 {
  margin-left: 20px !important
}
.margin-r-0 {
  margin-right: 0 !important
}
.margin-r-5 {
  margin-right: 5px !important
}
.margin-r-10 {
  margin-right: 10px !important
}
.margin-r-20 {
  margin-right: 20px !important
}
.margin-t-0 {
  margin-top: 0 !important
}
.margin-t-5 {
  margin-top: 5px !important
}
.margin-t-10 {
  margin-top: 10px !important
}
.margin-t-20 {
  margin-top: 20px !important
}
.margin-t-30 {
  margin-top: 30px !important
}
.margin-t-40 {
  margin-top: 40px !important
}
.margin-t-50 {
  margin-top: 50px !important
}
.margin-t-60 {
  margin-top: 60px !important
}
.margin-b-0 {
  margin-bottom: 0 !important
}
.margin-b-4 {
  margin-bottom: 4px !important
}
.margin-b-5 {
  margin-bottom: 5px !important
}
.margin-b-10 {
  margin-bottom: 10px !important
}
.margin-b-20 {
  margin-bottom: 20px !important
}
.margin-b-30 {
  margin-bottom: 30px !important
}
.margin-b-40 {
  margin-bottom: 40px !important
}
.margin-b-50 {
  margin-bottom: 50px !important
}
.margin-b-60 {
  margin-bottom: 60px !important
}
.margin-b-70 {
  margin-bottom: 70px !important
}
.margin-b-80 {
  margin-bottom: 80px !important
}
.margin-b-90 {
  margin-bottom: 90px !important
}
.margin-b-100 {
  margin-bottom: 100px !important
}
.height-100 {
  height: 100px !important
}
.height-200 {
  height: 200px !important
}
.height-300 {
  height: 300px !important
}
.height-400 {
  height: 400px !important
}
.height-500 {
  height: 500px !important
}
@media (max-width:992px) {
  .md-margin-b-0 {
    margin-bottom: 0 !important
  }
  .md-margin-b-4 {
    margin-bottom: 4px !important
  }
  .md-margin-b-5 {
    margin-bottom: 5px !important
  }
  .md-margin-b-10 {
    margin-bottom: 10px !important
  }
  .md-margin-b-20 {
    margin-bottom: 20px !important
  }
  .md-margin-b-30 {
    margin-bottom: 30px !important
  }
  .md-margin-b-40 {
    margin-bottom: 40px !important
  }
  .md-margin-b-50 {
    margin-bottom: 50px !important
  }
  .md-margin-b-60 {
    margin-bottom: 60px !important
  }
  .md-margin-b-70 {
    margin-bottom: 70px !important
  }
  .md-margin-b-80 {
    margin-bottom: 80px !important
  }
  .md-margin-b-90 {
    margin-bottom: 90px !important
  }
  .md-margin-b-100 {
    margin-bottom: 100px !important
  }
  .md-text-center {
    text-align: center
  }
  .md-text-left {
    text-align: left
  }
  .md-text-right {
    text-align: right
  }
}
@media (max-width:768px) {
  .sm-margin-b-0 {
    margin-bottom: 0 !important
  }
  .sm-margin-b-4 {
    margin-bottom: 4px !important
  }
  .sm-margin-b-5 {
    margin-bottom: 5px !important
  }
  .sm-margin-b-10 {
    margin-bottom: 10px !important
  }
  .sm-margin-b-20 {
    margin-bottom: 20px !important
  }
  .sm-margin-b-30 {
    margin-bottom: 30px !important
  }
  .sm-margin-b-40 {
    margin-bottom: 40px !important
  }
  .sm-margin-b-50 {
    margin-bottom: 50px !important
  }
  .sm-margin-b-60 {
    margin-bottom: 60px !important
  }
  .sm-margin-b-70 {
    margin-bottom: 70px !important
  }
  .sm-margin-b-80 {
    margin-bottom: 80px !important
  }
  .sm-margin-b-90 {
    margin-bottom: 90px !important
  }
  .sm-margin-b-100 {
    margin-bottom: 100px !important
  }
  .sm-text-center {
    text-align: center
  }
  .sm-text-left {
    text-align: left
  }
  .sm-text-right {
    text-align: right
  }
}
@media (max-width:480px) {
  .xs-margin-b-0 {
    margin-bottom: 0 !important
  }
  .xs-margin-b-4 {
    margin-bottom: 4px !important
  }
  .xs-margin-b-5 {
    margin-bottom: 5px !important
  }
  .xs-margin-b-10 {
    margin-bottom: 10px !important
  }
  .xs-margin-b-20 {
    margin-bottom: 20px !important
  }
  .xs-margin-b-30 {
    margin-bottom: 30px !important
  }
  .xs-margin-b-40 {
    margin-bottom: 40px !important
  }
  .xs-margin-b-50 {
    margin-bottom: 50px !important
  }
  .xs-margin-b-60 {
    margin-bottom: 60px !important
  }
  .xs-margin-b-70 {
    margin-bottom: 70px !important
  }
  .xs-margin-b-80 {
    margin-bottom: 80px !important
  }
  .xs-margin-b-90 {
    margin-bottom: 90px !important
  }
  .xs-margin-b-100 {
    margin-bottom: 100px !important
  }
  .xs-text-center {
    text-align: center
  }
  .xs-text-left {
    text-align: left
  }
  .xs-text-right {
    text-align: right
  }
}
table {
  width: 100%;
  border-spacing: 0;
  font-size: 16px;
}
table th {
  border-bottom: solid 3px #17bed2;
  padding: 10px 0;
}
table td {
  border-bottom: solid 3px #ddd;
  text-align: left;
  padding: 10px 0;
}
#program table {
  width: 100%;
  border-spacing: 0;
  font-size: 16px;
  margin-bottom: 20px;
}
#program table th {
  border-bottom: solid 3px #5C5C5C;
  padding: 10px 0;
}
#program table td {
  border-bottom: solid 3px #ddd;
  text-align: left;
  padding: 10px 0;
}
hr.style1{
	border-top: 3px solid #ddd;
}
hr.style2{
	border-top: 3px solid #ddd;
  margin-top: 10px;
  margin-bottom: 10px;
}
.bg_outline{
  background: url("../img/bg2.svg") top center;
  background-size: cover;
}
.box1 {
    padding: 1em 1em;
    margin: 2em 0;
    color: #232323;
    background: #F5FDFF;
    border: solid 1px #17bed2;
}
.box1 p {
    margin: 0; 
    padding: 0;
}
.info {
  width: 100%;
}
.info i {
  font-size: 20px;
  float: left;
  width: 50px;
  height: 50px;
  background: #17bed2;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  transition: all 0.3s ease-in-out;
	color: white;
}
.info p {
    padding: 14px 0 0 60px;
    margin-bottom: 0;
}

.ribbon1 {
  display: block;
  position: relative;
  height: 40px;/*リボンの高さ*/
  line-height: 40px;/*リボンの高さ*/
  text-align: center;
  padding: 0 15px;/*横の大きさ*/
  font-size: 16px;/*文字の大きさ*/
  background: #f57a78;/*塗りつぶし色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon2 {
  display: block;
  position: relative;
  height: 40px;/*リボンの高さ*/
  line-height: 40px;/*リボンの高さ*/
  text-align: center;
  padding: 0 15px;/*横の大きさ*/
  font-size: 16px;/*文字の大きさ*/
  background: #0DBC67;/*塗りつぶし色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon3 {
  display: block;
  position: relative;
  height: 40px;/*リボンの高さ*/
  line-height: 40px;/*リボンの高さ*/
  text-align: center;
  padding: 0 15px;/*横の大きさ*/
  font-size: 16px;/*文字の大きさ*/
  background: #0D81BC;/*塗りつぶし色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon4 {
  display: block;
  position: relative;
  height: 40px;/*リボンの高さ*/
  line-height: 40px;/*リボンの高さ*/
  text-align: center;
  padding: 0 15px;/*横の大きさ*/
  font-size: 16px;/*文字の大きさ*/
  background: #BC7C0D;/*塗りつぶし色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon5 {
  display: block;
  position: relative;
  height: 40px;/*リボンの高さ*/
  line-height: 40px;/*リボンの高さ*/
  text-align: center;
  padding: 0 15px;/*横の大きさ*/
  font-size: 16px;/*文字の大きさ*/
  background: #81A127;/*塗りつぶし色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.pc{
	display: block;
}
@media (max-width:768px) {
.pc{
	display: none;
}
}


#registration a.btn--orange {
  color: #fff;
  background-color: #eb6100;
	margin-top: 20px;
  border-bottom: 5px solid #b84c00;
	font-size: 18px;
	font-weight: 700;
}
#registration a.btn--orange:hover {
  margin-top: 12px;
  color: #fff;
  background: #f56500;
  border-bottom: 2px solid #b84c00;
}
#registration a.btn--shadow {
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
}
