
@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700);
/* align-items*/



.row-fluid [class*="span"] {
  min-height: inherit;
}

.pc {
  display: inline-block !important;
}
.sp {
  display: none !important;
}
@media (max-width: 640px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: inline-block !important;
  }
  .main-wrapper .wrapper {
    margin: 0 20px;
  }  
  
}  

.section+.section {
	margin-top: 90px;
}
#field {
padding-top: 0;}
#nav_global .general .nav_general_parents {
  padding-bottom: 17px;
  -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  -webkit-box-align: center;
    -ms-flex-align: center;
}

#nav_global .general .nav_general_parents .inquiry {
  margin-left: 10px;
  padding: 0;
}
#nav_global .general .nav_general_parents .inquiry>a {
    text-align: center;
    line-height: 33px;
    color: #fff;
    letter-spacing: 2px;
  padding: 0 1em;
    background-color: #023894;
    border: 1px solid #023894;
    transition-property: all;
    transition-duration: 0.3s;
    transition-delay: 0s;
    transition-timing-function: ease;
  position: relative;
    z-index: 1;
  font-family: "NotoSansCJKjp";
}
@media (min-width: 769px) {
  #nav_global .general .nav_general_parents .inquiry>a:hover {
    color: #023894;
    background-color: #fff;
  }
}  
#nav_global .general .nav_general_parents .nav_general_parent .btn_general_parent span {
  padding-bottom: 0 !important;
}
@media (max-width: 640px) {
  #nav_global .general .nav_general_parents {
    padding-bottom: 0;
  }  
  #nav_global .general .nav_general_parents .inquiry {
    margin: 20px auto 0;
    width: 100%;
    max-width: 300px;
  } 
  #nav_global .general .nav_general_parents .inquiry>a {
    display: block;
    width: 100%;
    box-sizing: border-box;
    line-height: 50px;
    height: 50px;
    padding: 0 20px;
  }  
}  

.main {
	padding-top: 120px;
}
.main:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 424px;
  background-image: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_top.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  z-index: -1;
}  
@media (max-width: 640px) {
  .main {
  padding-top: 60px;}
  .main:before {
    background-image: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_top_sp.png);
    height: 175px;
  }  
}


.main-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 100px;
  overflow: hidden;
  background-image: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_triangle_l.png),url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_triangle_r.png);;
  background-repeat: repeat-y,repeat-y;
  background-position: left 207px,right 1260px;
}


@media (max-width: 640px) {
  .main-wrapper {
    padding-bottom: 80px;
     background-size: 200px,150px;
    background-position: left 193px,right 693px;
  }
 
}  


.main-wrapper>.span12,
.main-wrapper>.wrapper>.span12{
float: none;}

.cta-wrapper {
  position: relative;
  background-image: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_cta.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  padding: 100px 0 180px;
  background-size: cover;
}
@media (max-width: 640px) {
  .cta-wrapper {
    padding: 60px 0 136px;
    background-image: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_cta_sp.jpg);
    background-size: cover;
  }  
} 
@media (min-width: 1601px) {
  .cta-wrapper {
    background-size: contain;
  }  
}  
@media (min-width: 1501px) {
  .cta-wrapper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    z-index: -1;
    background-color: #e5e6e7;
    
  }  
  .cta-wrapper:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    z-index: -1;
    background-color: #fafafa;
  }  
}

.cta-wrapper .text-upper{
  position: absolute;
  top: 0;
  left: 0;
  font-size: 220px;
  color: #7babc7;
  font-family: 'Roboto Condensed';
  font-weight: 700;
  opacity: 0.7;
  line-height: 0.75;
  letter-spacing: 0.1em;
  opacity: 0.15;
  overflow: hidden;
} 
@media (max-width: 1240px) {
   .cta-wrapper .text-upper{
     font-size: 110px;
  }  
}  
@media (max-width: 640px) {
  .cta-wrapper .text-upper{
    left: inherit;
    font-size: 110px;
    right: 0;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
  }  
}  
.cta-wrapper .text-lower{
  position: absolute;
  bottom: 90px;
  right: 0;
  font-size: 220px;
  color: #7babc7;
  font-family: 'Roboto Condensed';
  font-weight: 700;
  opacity: 0.7;
  letter-spacing: 0.1em;
  line-height: 0.75;
  opacity: 0.15;
  overflow: hidden;
} 
@media (max-width: 1240px) {
  .cta-wrapper .text-lower{
    font-size: 110px;
  }  
}  
@media (max-width: 640px) {
  .cta-wrapper .text-lower{
    right: inherit;
    font-size: 110px;
    left: 0;
    bottom: 120px;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
  }  
}  
.cta-wrapper .wrapper {
  position: relative;
  z-index: 2;
  max-width: 1280px;
}

@media (max-width: 1330px) {
  .cta-wrapper .wrapper {
    margin: 0 25px;
  }  
} 
@media (max-width: 640px) {
  .cta-wrapper .wrapper {
    margin: 0 20px;
  }  
} 
.cta-wrapper .wrapper .unit {
padding-bottom: 0;
}
.cta-wrapper .wrapper .unit .cols .col.col2{
  padding: 60px;
  width: 46.875%;
  color: #ffffff;
  box-sizing: border-box;
  margin-bottom: 0;
} 
.cta-wrapper .wrapper .unit .cols .col.col2+.col.col2{
  margin-left: 6.25%;
}

@media (max-width: 640px) {
  .cta-wrapper .wrapper .unit .cols .col.col2{
    width: 100%;
    padding: 40px 20px;
  }  
  .cta-wrapper .wrapper .unit .cols .col.col2+.col.col2{
    margin: 40px 0 0;
  }  
}  

.cta-wrapper .wrapper .unit .cols .col.col2:first-child{
  background-color: rgba(214,211,0,0.7);
} 
.cta-wrapper .wrapper .unit .cols .col.col2:last-child{
   background-color: rgba(129,204,196,0.7);
} 

.cta-wrapper .wrapper .unit .cols .col.col2 h3{
  font-family: "NotoSansCJKjp-Bold";
  calc(30 / 16 * 1rem);
  margin-bottom: 40px;
} 
.cta-wrapper .wrapper .unit .cols .col.col2 p {
  margin-bottom: 32px;
}
.bread-wrapper {
  width: 100%;
  position: relative;
  padding-top: 100px;
}
@media (max-width: 640px) {
  .bread-wrapper {
    padding-top: 36px;
  }  
}  

.bread-wrapper:after {
  content: "";
  position: absolute;
  left: 0;
  top: -170px;
  width: 100%;
  height: 330px;
  background: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_bottom.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}  
@media (max-width: 640px) {
  .bread-wrapper:after {
    background-image: url(//cdn2.hubspot.net/hubfs/4539740/images-site/product/common/bg_bottom_sp.png);
    height: 175px;
    top: -150px;
  }  
} 
.kv h1{
	line-height: 1;
  margin: 0 0 100px;
  padding-top: 100px;
}
@media (max-width: 640px) {
  .kv h1{
    margin: 0 0 80px;
    padding-top: 80px;
  }  
} 


.btn-box {
  margin: 40px auto 0;
  max-width: 408px;
}
.btn-box.-max {
  max-width: 100%;
} 
.btn-box.-auto {
  max-width: 300px;
  margin: 40px 0 0;
} 
.btn-box>a,
.btn-box .cta-button{
  display: block;
  border: 1px solid #05314c;
  background-color: #05314c;
  color: #ffffff;
  padding: 20px 32px 20px 20px;
  position: relative;
  z-index: 1;
  letter-spacing: 0.1em;
  box-sizing: border-box;
  calc(18 / 16 * 1rem);
  transition-property: all;
    transition-duration: 0.3s;
    transition-delay: 0s;
    transition-timing-function: ease;
} 
.btn-box.-white>a,
.btn-box.-white .cta-button{
  border: 1px solid #ffffff;
  background-color: #ffffff;
}  

@media (max-width: 640px) {
  .btn-box>a,
  .btn-box .cta-button{
    calc(16 / 16 * 1rem);
  }
  .btn-box.-auto {
    margin-left: auto;
    margin-right: auto;
    max-width: 280px;
  }  
} 
@media (min-width: 769px) {
  .btn-box>a:hover{
    background-color: #ffffff;
    border-color: #05314c;
  }  
  .btn-box.-white>a:hover{
    background-color: #333333;
    border-color: #333333;
  }  
  .cta-wrapper .wrapper .unit .cols .col.col2:first-child .btn-box .cta-button:hover {
    -webkit-box-shadow: 0 0 25px 0 rgba(149,150,16,0.8);
  	box-shadow: 0 0 25px 0 rgba(149,150,16,0.8);
  }
  .cta-wrapper .wrapper .unit .cols .col.col2:last-child .btn-box .cta-button:hover {
    -webkit-box-shadow: 0 0 25px 0 rgba(59,97,94,0.85);
  	box-shadow: 0 0 25px 0 rgba(59,97,94,0.85);
  }
}  
.btn-box>a:before,
.btn-box .cta-button:before{
  position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto;
    content: "";
    vertical-align: middle;
  width: 10px;
  height: 10px;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition-property: all;
    transition-duration: 0.3s;
    transition-delay: 0s;
    transition-timing-function: ease;
}
.btn-box.-white>a:before,
.btn-box.-white .cta-button:before{
  border-top: 2px solid #333333;
  border-right: 2px solid #333333;
}  
@media (min-width: 769px) {
  .btn-box>a:hover:before{
    border-top: 2px solid #05314c;
    border-right: 2px solid #05314c;
    right: 15px;
  } 
  .btn-box.-white>a:hover:before{
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
  }  
  .btn-box.-white .cta-button:hover:before {
    right: 15px;
  }
}  
.btn-box>a>span,
.btn-box .cta-button{
  position: static;
  color: #ffffff;
  transition-property: all;
    transition-duration: 0.3s;
    transition-delay: 0s;
    transition-timing-function: ease;
}
.btn-box .cta-button{
  position: relative;
}  
.btn-box.-white>a>span,
.btn-box.-white .cta-button{
  color: #333333;
}  
@media (min-width: 769px) {
  .btn-box>a:hover>span{
    color: #05314c;
  }
  .btn-box.-white>a:hover>span{
    color: #ffffff;
  }
}  

.wp,
.wp-f{
  opacity: 0;
}

.wp-r {
  -webkit-transform: translateX(-50px); 
  transform: translateX(-50px); 
}  
.wp-l {
  -webkit-transform: translateX(50px); 
  transform: translateX(50px); 
} 
.wp-u {
  -webkit-transform: translateY(-50px); 
  transform: translateY(-50px); 
} 

.fadeIn {
    -webkit-animation: fadeIn 1s cubic-bezier(.55,0,.1,1) both;
    animation: fadeIn 1s cubic-bezier(.55,0,.1,1) both;
}

.fadeInUp {
    -webkit-animation: fadeInUp 1s cubic-bezier(.55,0,.1,1) both;
    animation: fadeInUp 1s cubic-bezier(.55,0,.1,1) both;
}
.fadeInRight {
    -webkit-animation: fadeInRight 1s cubic-bezier(.55,0,.1,1) both;
    animation: fadeInRight 1s cubic-bezier(.55,0,.1,1) both;
}
.fadeInLeft {
    -webkit-animation: fadeInLeft 1s cubic-bezier(.55,0,.1,1) both;
    animation: fadeInLeft 1s cubic-bezier(.55,0,.1,1) both;
}

.-delay {
  -webkit-animation-delay: 0.5s !important;
  animation-delay: 0.5s !important;
}
@-webkit-keyframes fadeInUp { 
  0%{ 
    opacity: 0; 
    -webkit-transform: translateY(50px); 
    transform: translateY(-50px); 
  }
  100%{ 
    opacity: 1; 
    -webkit-transform: translateY(0); 
    transform: translateY(0); 
  }
}
@keyframes fadeInUp { 
  0%{ 
    opacity: 0; 
    -webkit-transform: translateY(50px); 
    transform: translateY(50px); 
  }
  100%{ 
    opacity: 1; 
    -webkit-transform: translateY(0); 
    transform: translateY(0); 
  }
}
@-webkit-keyframes fadeIn { 
  0%{ 
    opacity: 0; 
  }
  100%{ 
    opacity: 1; 
  }
}
@keyframes fadeIn { 
   0%{ 
    opacity: 0; 
  }
  100%{ 
    opacity: 1; 
  }
}
@-webkit-keyframes fadeInRight { 
  0%{ 
    opacity: 0; 
    -webkit-transform: translateX(-50px); 
    transform: translateX(-50px); 
  }
  100%{ 
    opacity: 1; 
    -webkit-transform: translateX(0); 
    transform: translateX(0); 
  }
}
@keyframes fadeInRight { 
   0%{ 
    opacity: 0; 
    -webkit-transform: translateX(-50px); 
    transform: translateX(-50px); 
  }
  100%{ 
    opacity: 1; 
    -webkit-transform: translateX(0); 
    transform: translateX(0); 
  }
}
@-webkit-keyframes fadeInLeft { 
  0%{ 
    opacity: 0; 
    -webkit-transform: translateX(50px); 
    transform: translateX(50px); 
  }
  100%{ 
    opacity: 1; 
    -webkit-transform: translateX(0); 
    transform: translateX(0); 
  }
}
@keyframes fadeInLeft { 
   0%{ 
    opacity: 0; 
    -webkit-transform: translateX(50px); 
    transform: translateX(50px); 
  }
  100%{ 
    opacity: 1; 
    -webkit-transform: translateX(0); 
    transform: translateX(0); 
  }
}
