html {
  font-size: 1rem;
}

@include media-breakpoint-up(sm) {
  html {
    font-size: 1.2rem;
  }
}

@include media-breakpoint-up(md) {
  html {
    font-size: 1.4rem;
  }
}

@include media-breakpoint-up(lg) {
  html {
    font-size: 1.6rem;
  }
}

img{
  max-width:100%;
  border:none;
}
nav{
  z-index: 2;
  width: 100%;
  opacity: 0.9;
  font-size: 12px;
}
.navbar-brand{
  padding-right: 20px;
}
.container .aaa{
  height: 2000px;
  background-color: blue;
  color: red;
}
#navbarTogglerDemo02 a{
  color: #000000;
}
#navbarTogglerDemo02 a:hover{
  color: #606060;
}

#myBtn {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 99;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 15px;
}



/*navbar*/
[class^="hvr-"] {
  margin-bottom: .4em;
  padding-bottom: .5em;
  cursor: pointer;
  text-decoration: none;
  color: #000000;
  font-weight:  400;
  font-size: 12px;

  /* Prevent highlight colour when element is tapped */
  -webkit-tap-highlight-color: rgba(0,0,0,0);

  /* Smooth fonts */
  -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Underline From Left */
.hvr-underline-from-left {
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
  margin-right: 10px;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  bottom: 0;
  background: #AF2227;
  text-decoration: none;
  color: #58585A;
  opacity: 0.8;
  height: 3px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-left:hover:before, .hvr-underline-from-left:focus:before, .hvr-underline-from-left:active:before {
  right: 0;
}

.news-title{
  color: #4D4D4D;
  font-size: 25px;
  vertical-align: middle;
  text-align: left;
  padding-bottom: 15px;
  padding-top: 30px;
}


#title0{
  font-size: 40px;
  font-weight: 300;
  display: block;
  padding-top: 120px;
  padding-bottom: 10px;
}

#title{
  font-size: 40px;
  font-weight: 300;
  display: block;
  padding-top: 40px;

}
#title2{
  font-size: 40px;
  font-weight: 300;
  display: block;
  padding-top: 40px;
}
#title3{
  font-size: 40px;
  font-weight: 300;
  display: block;
  padding-top: 40px;
}
 #title #title2 #title3 .container hr{
  margin-top: 0px;
  margin-bottom: 0px;
  padding-top: 0px;
  height: 20px;
}

.bigtext{
  font-size: 80px;
  font-weight:  300;
  display: inline-block;
  color: #AF2227;
  margin-bottom: -70px;
}

/* Flashing */
.column {
	margin: 0;
	padding: 0;
}
.column:last-child {
	padding-bottom: 10px;
}
.column::after {
	content: '';
	clear: both;
	display: block;
}
.column div {
	position: relative;
	float: left;
	margin: 0 0 0 50px;
	padding: 0;
}
.column div:first-child {
	margin-left: 0;
}
.column div span {
	position: absolute;
	bottom: -20px;
	left: 0;
	z-index: -1;
	display: block;
	width: 300px;
	margin: 0;
	padding: 0;
	color: #444;
	font-size: 18px;
	text-decoration: none;
	text-align: center;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	opacity: 0;*/
}
.container .hover13 a{
  text-decoration: none;
  color: #333;
}
.hover13 a:hover{
  text-decoration: none;
  color: #58585A;
  opacity: 0.8;
}

figure{
	margin: 0px;
	padding: 0px;
	overflow: hidden;
}
figure:hover+span {
	bottom: -36px;
	opacity: 1;
}

.hover13 figure:hover img {
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
}
@-webkit-keyframes flash {
	0% {
		opacity: .4;
	}
	100% {
		opacity: 1;
	}
}
@keyframes flash {
	0% {
		opacity: .4;
	}
	100% {
		opacity: 1;
	}
}
/* Flashing */
.container .headname a{
  text-decoration: none;
  color: #333;
}
.headname a:hover{
  text-decoration: none;
  color: #58585A;
  opacity: 0.8;

}
/* Underline From Center */
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
  height: 30px;
}
.hvr-underline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #AF2227;
  height: 3.5px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
  left: 0;
  right: 0;
}

.btn-danger a{
  text-decoration: none;
  color: #fff;
}

.btn-danger a:hover{
  text-decoration: none;
  color: #d1d2d4;
}

.titlebar{
  margin-top: 100px;
  margin-bottom: 30px;
  text-align: center;
}

/* Flashing */
footer{
  width: 100%;
  height: auto;
  background-color: #f7f7f7;
  color: #333333;
  padding: 10px;
  font-size: 12px;
  vertical-align: left;
}
.container .col-md-12{
  padding-left: 0px;
  padding-right: 0px;
  margin-right: 0px;
  display: inline-block;
}

.container-fluid{
  background-color:
}

.display3{
  font-weight: 300;
}

.vertical-align{
  display: flex;
  align-items: center;
}

.service{
  padding-top: 45px;
}

.icon{
  text-align: center;
}

.news-excerpt{
  font-size: 13px;
  line-height: 30px;
  text-align: left;
}

.row .casestudy{
  padding-top: 15px;
  text-align: right;
}

.button a{
  text-decoration: none;
  padding-top: 15px;
  color: #000000;
}
.button a:hover{
  text-decoration: none;
  color: #6d6e70;
}

/*contactus*/
#headname{
  font-size: 30px;
}

/*divごとリンク*/
.linkbox {
  position: relative;
}
.linkbox a {
  position: absolute;
  top: 0;
  left: 0;
  height:100%;
  width: 100%;
}

/* 見た目*/
.linkbox {
  padding: 1%;
}
.linkbox a:hover{/* マウスオーバー時に色変更*/
  opacity: 0.1;
  background-color: #FC97EF;
}

/* 縦3つの点*/
.three-dot-leader {
  margin: 0 auto;
  border: none;
  background: none;
  display: block;
  position: relative;
  /* ボタン要素のサイズ */
  width: 40px;
  height: 40px;
}

.three-dot-leader .dot,
.three-dot-leader .dot::before,
.three-dot-leader .dot::after {
  display: block;
  position: absolute;
  border-radius: 50%;
  /* ドット1つのサイズ */
  width: 3px;
  height: 3px;
  /* ドットの色 */
  background-color: #AF2227;
}

.three-dot-leader .dot {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.three-dot-leader .dot::before, .three-dot-leader .dot::after {
  content: '';
}

.three-dot-leader .dot::before {
  /* 上側ドットの位置 */
  top: -12px;
}

.three-dot-leader .dot::after {
  /* 下側ドットの位置 */
  top: 12px;
}

/* SPで非表示のクラス*/

@media(min-width:751px){
  .sp{
      display: none !important;
  }
}
@media(max-width:750px){
  .pc{
      display: none !important;
  }
}

/* 画像を丸く切り抜く*/
.image_circle {
  width: 200px;
  height:200px;
  border-radius:50%;
  object-fit: cover;
}

/* All happyの部分*/
.all_happy {
  text-align: center; 
  font-size: 16px; 
  padding: 2.5%; 
  margin: 3% 7%; 
  background-color: #AF2227; 
  color: aliceblue; 
  line-height: 1.6; 
  letter-spacing: 1.3px; 
  word-spacing: 2px;
  text-shadow: pink 1px 0 10px;
}