.link, body {
  position: relative;
  font-family: Hind, 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: Hind, sans-serif
}
.header .nav-item-hover:after, .link:after, .registration .registration-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
}
.ori{
	overflow-wrap: break-word
}
html {
  overflow-x: hidden
}
body, html, html a {
  -webkit-font-smoothing: antialiased
}
p {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 500;
  color: #3A3A3A;
  margin-bottom: 15px
}
em, li, li a {
  font-size: 16px;
  font-weight: 500;
  color: #515769
}
a {
  color: #33B5D7
}
a:active, a:focus, a:hover {
  color: #2392AF
}
.program-line {
  border-top: 5px solid #ffffff;
}

.fw-bold {
	font-weight: 700;
}
.link {
  font-size: 13px;
  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: 30px
}
h2 {
  font-size: 22px
}
h3, h4 {
  font-size: 20px
}
h5 {
  font-size: 18px
}
h6 {
  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, .registration {
  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
}
.btn{
	overflow-wrap: break-word;
}
.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)
}
.registration .registration-overlay:before, .registration .registration-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: 220px 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)
}
.registration {
  display: block
}
.registration .registration-overlay {
  position: relative;
  cursor: pointer
}
.registration .registration-overlay:before {
  position: absolute;
  background: 0 0
}
.registration:hover .registration-overlay:before {
  background: rgba(0, 0, 0, .5);
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.registration .registration-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)
}
.registration .registration-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)
}
.registration .registration-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
}
.registration .registration-popup-content-divider {
  border-right: 1px solid #cdcecf
}
@media (max-width:768px) {
  .registration .registration-popup-content {
    width: 95%
  }
  .registration .registration-popup-content-divider {
    border-right: none;
    border-bottom: 1px solid #cdcecf
  }
}
.registration .registration-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)
}
.registration .registration-popup-close:hover {
  color: #aaacb3;
  transition-duration: .3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(.7, 1, .7, 1)
}
.registration .registration-popup-tag {
  margin: 0
}
.registration .registration-popup-tag-item {
  padding: 0 2px
}
.registration .registration-popup-tag-link {
  font-size: 13px
}

#registration .button a {
    background: #337ab7;
    border-radius: 9999px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 250px;
    padding: 10px 25px;
    font-family: "Noto Sans Japanese";
    color: #ffffff;
    line-height: 1.8;
    text-decoration: none;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
#registration .button a:hover {
    background: #4092D8;
    color: #FFF;
}
#registration .button a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #ffffff;
    border-right: 3px solid #ffffff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
#registration .button a:hover:after {
    border-color: #FFF;
}

.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: 164px;
  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: 13px;
  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
}
.bg-dark{background-color:#112933 !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
  }
}


.program-box h2 {
  position: relative;
  color: #fff;
  overflow: hidden;
  padding: 1.5rem 2rem 1.5rem 130px;
  border-top: 3px solid #fff;
}

.program-box h2:before {
  position: absolute;
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #fff;
}

.program-box h2 span {
  font-size: 40px;
  font-size: 4rem;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  padding-top: 3px;
  padding-left: 16px;
  color: #337ab7;
}

.program-box {
  background-color: #337ab7;
  padding: 2.5rem 1.3rem;
  border-radius: 1rem 1rem 0 0;
  margin-bottom: 0rem;
}
.program-box p, ul li, h6, h4 {
  color: #ffffff;
}

.program-box:hover .ico-circle {
  transition: all 500ms ease;
  color: #fff;
  background-color: #0078ff;
  box-shadow: 0 0 0 10px #cde1f8;
}

.program-box .program-ico {
  margin-bottom: 1rem;
  color: #1e1e1e;
}

.program-box .ico-circle {
  transition: all 500ms ease;
  font-size: 4rem;
}

.program-box .s-title {
  font-size: 1.4rem;
  text-transform: uppercase;
  text-align: center;
  padding: .4rem 0;
}

.program-box .s-description {
  color: #4e4e4e;
}





.program-box2 h2 {
  position: relative;
  color: #000;
  overflow: hidden;
  padding: 1.5rem 2rem 1.5rem 130px;
  border-top: 3px solid #fff;
}
.program-box2 h6 {
  color: #000;
}
.program-box2 ul li {
  color: #000;
}
.program-box2 p {
  color: #000;
}

.program-box2 h2:before {
  position: absolute;
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #fff;
}

.program-box2 h2 span {
  font-size: 40px;
  font-size: 4rem;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  padding-top: 3px;
  padding-left: 16px;
  color: #000;
}

.program-box2 {
  background-color: #F2E2D5;
  padding: 2.5rem 1.3rem;
  border-radius: 0 0 1rem 1rem;
  margin-bottom: 3rem;
}
.program-box2 p{
  color: #000;
}

.program-box2:hover .ico-circle {
  transition: all 500ms ease;
  color: #fff;
  background-color: #0078ff;
  box-shadow: 0 0 0 10px #cde1f8;
}

.program-box2 .program-ico {
  margin-bottom: 1rem;
  color: #1e1e1e;
}

.program-box2 .ico-circle {
  transition: all 500ms ease;
  font-size: 4rem;
}

.program-box2 .s-title {
  font-size: 1.4rem;
  text-transform: uppercase;
  text-align: center;
  padding: .4rem 0;
}

.program-box2 .s-description {
  color: #4e4e4e;
}

.footer {
    background: url(../img/footer.png) center center no-repeat;
    background-size: contain;
}
.flexbox {
  display: flex;
  flex-wrap: 値;
}

.pc{
	display: block;
}
.pc2{
	display: inline-block;
    margin-left: -10px;
}
.sp{
	display: none;
}
@media (max-width: 767px) {
.pc{
	display: none;
}
.sp{
	display: block;
}
}

.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.m-n1{margin:-0.25rem !important}.m-n2{margin:-0.5rem !important}.m-n3{margin:-1rem !important}.m-n4{margin:-1.5rem !important}.m-n5{margin:-3rem !important}.mx-n1{margin-right:-0.25rem !important;margin-left:-0.25rem !important}.mx-n2{margin-right:-0.5rem !important;margin-left:-0.5rem !important}.mx-n3{margin-right:-1rem !important;margin-left:-1rem !important}.mx-n4{margin-right:-1.5rem !important;margin-left:-1.5rem !important}.mx-n5{margin-right:-3rem !important;margin-left:-3rem !important}.my-n1{margin-top:-0.25rem !important;margin-bottom:-0.25rem !important}.my-n2{margin-top:-0.5rem !important;margin-bottom:-0.5rem !important}.my-n3{margin-top:-1rem !important;margin-bottom:-1rem !important}.my-n4{margin-top:-1.5rem !important;margin-bottom:-1.5rem !important}.my-n5{margin-top:-3rem !important;margin-bottom:-3rem !important}.mt-n1{margin-top:-0.25rem !important}.mt-n2{margin-top:-0.5rem !important}.mt-n3{margin-top:-1rem !important}.mt-n4{margin-top:-1.5rem !important}.mt-n5{margin-top:-3rem !important}.me-n1{margin-right:-0.25rem !important}.me-n2{margin-right:-0.5rem !important}.me-n3{margin-right:-1rem !important}.me-n4{margin-right:-1.5rem !important}.me-n5{margin-right:-3rem !important}.mb-n1{margin-bottom:-0.25rem !important}.mb-n2{margin-bottom:-0.5rem !important}.mb-n3{margin-bottom:-1rem !important}.mb-n4{margin-bottom:-1.5rem !important}.mb-n5{margin-bottom:-3rem !important}.ms-n1{margin-left:-0.25rem !important}.ms-n2{margin-left:-0.5rem !important}.ms-n3{margin-left:-1rem !important}.ms-n4{margin-left:-1.5rem !important}.ms-n5{margin-left:-3rem !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.375rem + 1.5vw) !important}.fs-2{font-size:calc(1.325rem + 0.9vw) !important}.fs-3{font-size:calc(1.3rem + 0.6vw) !important}.fs-4{font-size:calc(1.275rem + 0.3vw) !important}.fs-5{font-size:1.25rem !important}.fs-6{font-size:1rem !important}