/* ===================================
    Google font
====================================== */

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@200;300;400&display=swap');
@import url('https://fonts.googleapis.com/css?family=Hannari:100,200,300,400,500,');



\}html, body {
  position: relative;
  overflow-x: hidden; }







/*-----------------------------------------
    Page Loader
------------------------------------------*/
.page-loader {
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #333333;
  z-index: 100000; }

.loader {
  width: 50px;
  height: 50px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  font-size: 10px;
  text-indent: -12345px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  border-left: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  -webkit-animation: spinner 700ms infinite linear;
  animation: spinner 700ms infinite linear;
  z-index: 100001; }

@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg); } }
.container {
  position: relative;
  z-index: 3; }

/* overlay and pattern */
.overlay, .color-overlay, .gradient-overlay {
  min-width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  bottom: 0;
  right: 0; }

.color-overlay {
  background: #333333;
  opacity: 0.3; }

.gradient-overlay {
  opacity: 0.7;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0a545d+0,000000+100&amp;1+0,0.3+100 */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzBhNTQ1ZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4zIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #0a545d), color-stop(100%, rgba(0, 0, 0, 0.3)));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #0a545d 0%, rgba(0, 0, 0, 0.3) 100%);
  /* Chrome10+,Safari5.1+ */
  /* Opera 11.10+ */
  /* IE10+ */
  background: linear-gradient(to bottom, #0a545d 0%, rgba(0, 0, 0, 0.3) 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0a545d', endColorstr='#4d000000',GradientType=0 );
  /* IE6-8 */ }

/* section */
.section {
  padding: 45px 0;
  position: relative;
  z-index: 5;
  background-color: #ffffff; }
  .section.dark .section-heading span, .section.dark .section-heading h2 {
    color: #ffffff; }

.section-heading {
  position: relative;
  text-align: center;
  color: #000000;
  padding-bottom: 25px;
  margin-bottom: 80px;
  text-transform: uppercase; }
  @media only screen and (max-width: 992px) {
    .section-heading {
      margin-bottom: 40px; } }
  .section-heading span {
    margin-bottom: 30px;
    letter-spacing: 1px;
    margin-top: 0px;
    font-size: 12px; }

.section-heading::after {
  content: '';
  width: 80px;
  height: 3px;
  background-color: #573D17;
  position: absolute;
  left: -webkit-calc(50% - 40px);
  left: calc(50% - 40px);
  bottom: 0; }

.dark-bg .section-heading {
  color: #fff; }
.dark-bg .section-heading::after {
  background-color: #fff; }

/* Check list */
.check-list {
  padding: 0;
  list-style-type: none; }

.check-list li {
  position: relative;
  padding-left: 30px; }

.check-list li::before {
  content: "\f00c";
  font-family: FontAwesome;
  position: absolute;
  left: 0; }

/* Arrow Down Animation */
@-webkit-keyframes hvr-hang {
  0% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  50% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); } }
@keyframes hvr-hang {
  0% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); }
  50% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px); }
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); } }
@-webkit-keyframes hvr-hang-sink {
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); } }
@keyframes hvr-hang-sink {
  100% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px); } }
/* Helper Class */
.text-xs-left {
  text-align: left; }

.text-xs-center {
  text-align: center; }

.text-xs-right {
  text-align: right; }

@media (min-width: 768px) {
  .text-sm-left {
    text-align: left !important; }

  .text-sm-center {
    text-align: center !important; }

  .text-sm-right {
    text-align: right !important; } }
@media (min-width: 992px) {
  .text-md-left {
    text-align: left !important; }

  .text-md-center {
    text-align: center !important; }

  .text-md-right {
    text-align: right !important; } }
/* Selection */
::-moz-selection {
  background: #000;
  color: #fff; }

::-webkit-selection {
  background: #000;
  color: #fff; }

::selection {
  background: #000;
  color: #fff; }
  
  

  /* 画像のマウスオーバー */
  a img:hover {
         opacity: 0.8;
         filter: alpha(opacity=80);
}



  /* 説明テキスト中央揃え */
.textcenter {
text-align: center;
}



/*--------------------------------------------------------------
	Portfolio
--------------------------------------------------------------*/
/* Portfolio filter */
.filter {
  text-align: center;
  list-style: none;
  padding: 0;
  margin: 0 0 70px;
}

.filter > li {
  display: inline-block;
  padding: 0 0 10px;
  margin: 0 25px;
}

/* Portfolio grid */
.works-grid {
  list-style: none;
  padding: 0;
  margin: 0;
}

.works-grid.works-grid-gut {
  margin: 0 0 0 -10px;
}

.works-grid.works-grid-gut .work-item {
  padding: 0 0 10px 10px;
}

.work-item {
  width: 50%;
  float: left;
  margin: 0;
}

.works-grid-3 .work-item {
  width: 33.3333%;
}

.container .works-grid-3 .work-item {
  width: 33.2%;
}

.works-grid-4 .work-item {
  width: 25%;
}

.works-grid-5 .work-item {
  width: 20%;
}

.work-item > a {
  position: relative;
  display: block;
  overflow: hidden;
}

.work-image {
  position: relative;
  overflow: hidden;
}

.work-image img {
  display: block;
  overflow: hidden;
  width: 100%;
}

.work-image:after {
  position: absolute;
  display: block;
  content: "";
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.work-caption {
  width: 100%;
  padding: 0 20px;
  opacity: 0;
  position: absolute;
  bottom: 100%;
  left: 0;
  text-align: center;
  overflow: hidden;
}

.work-title {
  font-size: 14px;
  color: #fff;
  margin: 0 0 6px;
}

.work-descr {
  color: #aaa;
}

.work-item:hover .work-image:after {
  background: rgba(0, 0, 0, 0.6);
}

.work-item:hover .work-image > img {
  -webkit-transform: scale(1.1) rotate(2deg);
  -ms-transform: scale(1.1) rotate(2deg);
  transform: scale(1.1) rotate(2deg);
}

.work-item:hover .work-caption {
  bottom: 50%;
  opacity: 1;
  z-index: 3;
  -webkit-transform: translateY(50%);
  -ms-transform: translateY(50%);
  transform: translateY(50%);
}

/* Work item white background*/
.works-grid.works-hover-w .work-title {
  color: #111;
}

.works-grid.works-hover-w .work-item:hover .work-image:after {
  background: rgba(255, 255, 255, 0.8);
}

/* Work item gradien background*/
.works-grid.works-hover-g .work-image:after {
  opacity: 0;
}

.works-grid.works-hover-g .work-descr {
  color: #fff;
}

.works-grid.works-hover-g .work-item:hover .work-image:after {
  background: #6fe29e;
  background: linear-gradient(135deg, rgba(111, 226, 158, 0.8) 0%, rgba(91, 218, 209, 0.8) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6fe29e', endColorstr='#5bdad1',GradientType=1 );
  opacity: 1;
}

.sliding-portfolio .work-item {
  width: 100%;
}





/* back to top button */
#totop {
  position: fixed;
  bottom: 10px;
  right: 17px;
  z-index: 999;
  background: #999999;
  display: none;
  height: 45px;
  width: 45px;
  text-align: center;
  line-height: 45px;
  font-size: 18px;
  color: #000;
  opacity: 0.6;
  border-radius: 2px; }
img {
  max-width: 100%; }

.form-control {
  border-radius: 2px;
  border: 1px solid #DFDFDF;
  box-shadow: none; }
  .form-control:focus {
    box-shadow: none;
    border-color: rgba(0, 0, 0, 0.8); }

.icons-wrap, #icons {
  margin-top: 40px;
  margin-bottom: 80px; }
  .icons-wrap i, .icons-wrap li, #icons i, #icons li {
    display: inline-block;
    margin: 0 20px 20px 0px;
    height: 50px;
    width: 50px;
    line-height: 50px;
    text-align: center;
    border: 1px solid #dadada;
    font-size: 2em; }

ul#icons {
  list-style: none;
  padding: 0; }

/**
* Style for components
**/
a:focus {
  outline: none; }

.navbar-toggle {
  border: 0; }

.navbar > .container .navbar-brand,
.navbar > .container-fluid .navbar-brand {
  margin-left: 0; }

.carousel-control.left,
.carousel-control.right {
  background: none; }

.alert {
  padding: 15px 12px;
  border-radius: 2px; }

.nav-tabs > li > a {
  border-radius: 2px 2px 0 0;
  color: #898989; }

.panel-heading {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  padding: 0; }

.nav-tabs {
  margin-bottom: 30px; }

/* Accordion */
.panel-title {
  font-size: 15px; }

.panel-heading a {
  position: relative;
  display: block;
  letter-spacing: 1px;
  word-spacing: initial;
  padding: 10px 15px; }
  .panel-heading a:after {
    position: absolute;
    content: "\f106";
    top: 50%;
    right: 15px;
    font-family: "FontAwesome";
    line-height: 1;
    font-size: 15px;
    margin-top: -7px; }
  .panel-heading a.collapsed:after {
    content: "\f107"; }
  .panel-heading a:hover, .panel-heading a:focus, .panel-heading a:active {
    text-decoration: none; }

.cta-1 {
  background: url(../images/top/instagram-bg.jpg) no-repeat center;
  background-color:  ; }
  .cta-1 .call-to-action {
    text-align: center;
    color: #fdfdfd;
    background-size: contain;
    padding: 50px 0; }
    .cta-1 .call-to-action .cta-text {
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: 30px;
      margin-top: 0;
      text-transform: capitalize;
      font-size: 17px; }
      
.cta-sakura {
  background: url(../images/event/1_sakura/top_image.jpg) no-repeat center;
  background-color:  ; }
  .cta-sakura .call-to-action {
    text-align: center;
    color: #fdfdfd;
    background-size: contain;
    padding: 50px 0; }
    .cta-sakura .call-to-action .cta-text {
      color: #fff;
      margin-bottom: 30px;
      margin-top: 0;
      text-transform: capitalize;
      font-size: 17px; }
      
      
      
      
.cta-1_2 {
  background: url(../images/top/contact_background02.jpg) no-repeat left;
  background-color:  ; }
  .cta-1_2 .call-to-action {
    text-align: center;
    color: #000000;
    background-size: contain;
    padding: 50px 0; }
    .cta-1_2 .call-to-action .cta-text {
      color: #000000;
      margin-bottom: 30px;
      margin-top: 0;
      text-transform: capitalize;
      font-size: 17px; }
      
      
      

.cta-2 {
  background-color: #000;
  padding: 30px 0; }
  .cta-2 .cta-text {
    color: #fff;
    margin: 0;
    line-height: 30px;
    margin-right: 30px;
    text-transform: capitalize;
    font-size: 16px;
    letter-spacing: 1px; }
    @media only screen and (max-width: 767px) {
      .cta-2 .cta-text {
        font-size: 13px;
        line-height: 20px;
        display: block;
        margin-right: 0; } }
  @media only screen and (max-width: 992px) {
    .cta-2 .btn {
      margin-top: 15px; } }




html,
body {
  min-height: 100%;
  color: #000000;
  font-family:"Noto Serif JP", Yu Mincho, Roboto, sans-serif;                                               
  font-weight: 400;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility; 
  
  
  
  }
  
  
 .wrap {
     overflow: hidden;
 } 
  
  a {
font-weight:bold;
text-decoration:none;
}


a {
color:#F90064;
}

a:hover {
color:#FF3E8B;
text-decoration:none;
}

a:active {
color:#FF6600;
}
  
  

h0,
h1,
h2,
h3,
h4,
h5 {
  font-family:"Noto Serif JP", Yu Mincho, Roboto, sans-serif;    
  color: #000000; }

h1 {
  font-size: 28px;
  font-weight: 500;
  line-height: 38px;
  letter-spacing: 4px;
  margin-bottom: 25px;
    margin-top: 0;
  text-transform: none; }
  @media only screen and (max-width: 767px) {
    h1 {
      font-size: 26px;
      line-height: 35px;
      margin-bottom: 25px;
      margin-top: 0;
      letter-spacing: 4px; } }

h2 {
  font-size: 26px;
  font-weight: 600;
  text-transform: none;
  margin-top: 50;
  margin-bottom: 15px;
  word-spacing: 4px;
  line-height: 34px;
  letter-spacing: 2px; }
  @media only screen and (max-width: 767px) {
    h2 {
      font-size: 23px;
      font-weight: 600;
      line-height: 32px;
      margin-bottom: 20px;
      letter-spacing: 2px;
      word-spacing: 2px; } }
      
      




h3 {
  font-size: 24px;
  margin-bottom: 20px;
  font-weight: 400;
  letter-spacing: 2px;
  text-transform: none; }
  
  @media only screen and (max-width: 767px) {
    h3 {
      font-size: 20px;
      margin-bottom: 15px;
      letter-spacing: 2px;
      font-weight: 400;
      line-height: 30px;
      word-spacing: 2px; } }


/*----topページタイトル文字----*/
h0 {
  font-size: 30px;
  margin-bottom: 20px;
  font-weight: 500;
  letter-spacing: 3px;
  text-transform: none; 
  line-height: 43px;
  color: #000000;
  
  color: #000;
  -webkit-text-stroke: 1px #555555;
  text-stroke: 1px #555555;
    
    }
 
 .fuchidori {
  color: #000;
  -webkit-text-stroke: 1px #FFF;
  text-stroke: 1px #FFF;
}
 
  
    @media only screen and (max-width: 767px) {
    h0 {
      font-size: 30px;
      font-weight: 600;
      letter-spacing: 2px;
      line-height: 45px;
      word-spacing: 2px; } }

h4 {
  font-size: 20px;
  font-weight: 600;
  line-height: 27px;
  word-spacing: 2px;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 25px; }
  @media only screen and (max-width: 992px) {
    h4 {
      font-size: 20px;
      font-weight: 600;
      letter-spacing: 1px; } }

h5 {
  font-size: 15px;
  font-weight: 300;
  line-height: 25px;
  letter-spacing: 1px;
  text-transform: none;
  margin-bottom: 20px; }
    @media only screen and (max-width: 992px) {
    h5 {
      font-size: 13px;
      font-weight: 400;
      letter-spacing: 1px; } }

h6 {
  text-transform: none;
  color:#5F5F5F ;
  font-size: 12px;
  margin-top:-35px;
  margin-bottom: 20px;
  letter-spacing: 1px; }
  
    @media only screen and (max-width: 992px) {
    h6 {
    font-size: 12px;
    margin-top:-20px;
    margin-bottom: 25px;
    letter-spacing: 1px; } }
    
    
  h7 {
  text-transform: none;
  color:#5F5F5F ;
  font-size: 12px;
  margin-top:-45px;
  margin-bottom: 25px;
  letter-spacing: 0px; }
  
    @media only screen and (max-width: 992px) {
    h7 {
    font-size: 10px;
    margin-top:-30px;
    margin-bottom: 25px;
    letter-spacing: 0px; } }
    
    
  
  h8 {
  text-transform: none;
  color:#5F5F5F ;
  font-size: 14px;
  margin-top:-45px;
  margin-bottom: 20px;
  letter-spacing: 0px; }
  
    @media only screen and (max-width: 992px) {
    h8 {
    font-size: 12px;
    margin-top:-30px;
    margin-bottom: 20px;
    letter-spacing: 0px; } }
  
  
p {
font-family:"Noto Sans JP", Yu Gothic, Roboto, sans-serif;  
  font-size: 15px;
  line-height: 1.6;
  letter-spacing: 0.07em;
  text-transform: none; }
  
   @media only screen and (max-width: 992px) {
    p {
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.06em; } }
  
  
  p.led {
    font-size: 1.2em;
    margin-bottom: 40px; }
    p.led:first-letter {
      font-size: 4em;
      float: left;
      line-height: 50px; }

.dark-bg h1,
.dark-bg h2,
.dark-bg h3,
.dark-bg h5 {
  color: #ffffff; }

blockquote p {
  font-family:"Noto Sans JP", Yu Gothic, Roboto, sans-serif;    
  font-size: 15px;
  letter-spacing: 2; 


     @media only screen and (max-width: 992px) {
    p {
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.06em; }}
}
  
  
  
  
  

.plain-list li {
  line-height: 2.2em; }

/*-----------------*/
/* Global Styles   */
/*-----------------*/
.btn {
  border-radius: 5px;
  font-size: 15px;
  padding: 10px 35px;
  letter-spacing: 2px;
  line-height: 8px;
  text-transform: uppercase;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s; }

.btn:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #7BB700;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  -ms-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: -webkit-transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out; }

.btn:hover, .btn:focus, .btn:active {
  color: white;
  outline: none; }

.btn:hover:before, .btn:focus:before, .btn:active:before {
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1); }

/*-----------------*/
/* Solid Buttons   */
/*-----------------*/
.btn-default {
  background-color: #fff;
  border: 1px solid #DFDFDF;
  color: #031313; }
  .btn-default:before {
    background: #000000; }
  .btn-default:hover, .btn-default:active, .btn-default:focus {
    background-color: #fff;
    color: #fff; }

.btn-mild:before {
  background: #000000; }
.btn-mild:hover, .btn-mild:active, .btn-mild:focus {
  color: #fff; }

.btn-dark {
  background-color: #000;
  color: #fdfdfd; }
  .btn-dark:hover, .btn-dark:active, .btn-dark:focus {
    color: #000000; }

/*-----------------*/
/* Outline Buttons */
/*-----------------*/
.btn-default-o {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff; }

.btn-default-o:hover, .btn-default-o:focus {
  color: #000000; }

.btn-list {
  margin-bottom: 0; }
  .btn-list button {
    margin-right: 15px;
    margin-bottom: 15px; }

.btn.btn-round {
  border-radius: 14px; }
  .btn.btn-round.btn:before {
    border-radius: 14px; }

/*bootstrap buttons*/
.btn-lg {
  padding: 15px 60px; }

.btn-sm {
  padding: 8px 20px; }

.btn-xs {
  padding: 6px 10px; }

.btn-primary:active, .btn-primary:hover, .btn-primary:focus {
  color: #337ab7; }

.btn-success:active, .btn-success:hover, .btn-success:focus {
  color: #5cb85c; }

.btn-info:active, .btn-info:hover, .btn-info:focus {
  color: #46b8da; }

.btn-warning:active, .btn-warning:hover, .btn-warning:focus {
  color: #eea236; }

.btn-danger:active, .btn-danger:hover, .btn-danger:focus {
  color: #d43f3a; }

.main-navigation {
  border-bottom-color: rgba(255, 255, 255, 0.26);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease; }
  .main-navigation .navbar-brand {
    font-family:"Noto Serif JP", Yu Mincho, Roboto, sans-serif;  
    height: auto;
    padding: 22px 15px 10px 15px;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease; }
    .main-navigation .navbar-brand a {
      color: #fff;
      font-size: 26px;
      text-transform: uppercase;
      letter-spacing: 2px; }
      .main-navigation .navbar-brand a em {
        font-style: normal;
        text-transform: lowercase;
        background-color: rgba(255, 255, 255, 0.3);
        width: 8px;
        display: inline-block;
        height: 20px;
        text-align: center;
        letter-spacing: 0px;
        padding: 10px;
        box-sizing: content-box;
        margin: 0px 5px;
        border-radius: 2px; }
    .main-navigation .navbar-brand a:focus,
    .main-navigation .navbar-brand a:hover {
      text-decoration: none; }
  .main-navigation .navbar-toggle {
    padding: 0 15px;
    color: #FFF;
    border-radius: 2px;
    font-size: 28px; }
  .main-navigation .navbar-nav > .dropdown.open > a {
    background: transparent; }
    @media only screen and (max-width: 767px) {
      .main-navigation .navbar-nav > .dropdown.open > a {
        border-bottom: 1px solid rgba(73, 71, 71, 0.15); } }
    .main-navigation .navbar-nav > .dropdown.open > a span {
      background: white;
      color: black; }
      @media only screen and (max-width: 767px) {
        .main-navigation .navbar-nav > .dropdown.open > a span {
          background: transparent;
          color: white; } }
  .main-navigation .navbar-nav li a {
    color: rgba(255, 255, 255, 0.75);
    font-size: 13px;
    letter-spacing: 2px;
    margin-bottom: -1px;
    padding: 40px 20px 15px;
    text-transform: uppercase;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .main-navigation .navbar-nav li a {
        border-bottom: 1px solid rgba(73, 71, 71, 0.15); } }
    .main-navigation .navbar-nav li a span {
      padding: 1px 4px;
      border-radius: 2px;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
    .main-navigation .navbar-nav li a:hover, .main-navigation .navbar-nav li a:focus {
      background-color: rgba(255, 255, 255, 0); }
      .main-navigation .navbar-nav li a:hover span, .main-navigation .navbar-nav li a:focus span {
        background: white;
        color: black; }
        @media only screen and (max-width: 767px) {
          .main-navigation .navbar-nav li a:hover span, .main-navigation .navbar-nav li a:focus span {
            background: transparent;
            color: white; } }
  .main-navigation .navbar-nav li.active a {
    background-color: rgba(255, 255, 255, 0); }
    .main-navigation .navbar-nav li.active a span {
      background: white;
      color: black; }
  .main-navigation .dropdown-toggle:after {
    position: absolute;
    display: block;
    right: 0;
    top: 67%;
    margin-top: -6px;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: 9px;
    content: "\f107";
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease; }
    @media (max-width: 767px) {
      .main-navigation .dropdown-toggle:after {
        right: 7px; } }
  .main-navigation .dropdown-toggle.open:after {
    content: "\f106"; }
  @media (max-width: 767px) {
    .main-navigation .open > .dropdown-toggle:after {
      content: "\f106"; } }
  .main-navigation .dropdown-menu {
    background: rgba(26, 26, 26, 0.9);
    border-radius: 0;
    border: 0;
    padding: 0;
    box-shadow: none;
    min-width: 180px; }
    .main-navigation .dropdown-menu li a {
      border-bottom: 1px solid rgba(73, 71, 71, 0.15);
      padding: 25px 20px;
      letter-spacing: 2px;
      color: rgba(255, 255, 255, 0.76);
      font-size: 12px;
      line-height: 1px; }
      .main-navigation .dropdown-menu li a:hover {
        color: #ffffff;
        background: #000000;
        border-bottom-color: rgba(73, 71, 71, 0.15); }
    .main-navigation .dropdown-menu li.open > a {
      color: #ffffff;
      background: #000000; }
      .main-navigation .dropdown-menu li.open > a:hover {
        color: white; }
    .main-navigation .dropdown-menu.left-side .dropdown-menu {
      border: 0;
      border-right: 1px solid rgba(73, 71, 71, 0.15);
      right: 100%;
      left: auto; }
    .main-navigation .dropdown-menu .dropdown-menu {
      border-left: 1px solid rgba(73, 71, 71, 0.15);
      left: 100%;
      right: auto;
      top: 0;
      margin-top: 0; }
      @media only screen and (max-width: 767px) {
        .main-navigation .dropdown-menu .dropdown-menu {
          padding-left: 30px; } }
    @media only screen and (min-width: 768px) {
      .main-navigation .dropdown-menu .dropdown-toggle:after {
        content: '\f105';
        top: 50%;
        right: 8px; } }

.navbar-solid {
  background-color: #333333; }
  .navbar-solid .navbar-brand {
    padding: 10px 15px 8px; }
  .navbar-solid .navbar-nav > li > a {
    padding: 20px; }
  .navbar-solid .dropdown-toggle:after {
    top: 51%; }

@media only screen and (max-width: 992px) {
  .main-navigation .navbar-nav > li > a {
    padding: 20px 10px 15px;
    letter-spacing: 1px; }
  .main-navigation .navbar-brand {
    padding: 8px 0 0 15px; } }
@media only screen and (max-width: 767px) {
  .navbar-collapse {
    background-color: rgba(0, 0, 0, 0.9); } }
    
    
    /* スマホメニューの透明化 */
    .shopinfomenu
    {opacity:0; }

    
    
.header-wrapper {
  background: url(../images/backgrounds/bg-header.jpg) no-repeat center center;
  background-size: cover;
  display: table;
  height: 100vh;
  width: 100%;
  position: relative;
  z-index: 1;
  overflow-x: hidden; }
  @media screen and (max-width: 767px) and (orientation: landscape) {
    .header-wrapper {
      height: auto;
      min-height: 100vh;
      padding: 0px; } }
      
      
  .header-wrapper .header-wrapper-inner {
    display: table-cell;
    text-align: center;
    vertical-align: middle; }
    .header-wrapper .header-wrapper-inner.flexslider .slides li {
      height: 100vh;
      min-height: 650px; }
      
      
    .header-wrapper .header-wrapper-inner .intro p {
      color: rgba(255, 255, 255, 0.75);
      letter-spacing: 2px;
      margin-bottom: 80px;
      text-transform: none; }
      @media only screen and (max-width: 992px) {
        .header-wrapper .header-wrapper-inner .intro p {
          margin-bottom: 80px; } }
          
          
    .header-wrapper .header-wrapper-inner .arrow-down {
      bottom: 10%;
      display: block;
      position: absolute;
      width: 100%;
      z-index: 3; }
      @media only screen and (max-width: 767px) {
        .header-wrapper .header-wrapper-inner .arrow-down {
          bottom: 0; } }
          
          
      .header-wrapper .header-wrapper-inner .arrow-down a {
        display: inline-block;
        padding: 20px 35px; }
        .header-wrapper .header-wrapper-inner .arrow-down a:hover {
          text-decoration: none; }
        .header-wrapper .header-wrapper-inner .arrow-down a i {
          font-size: 2em;
          color: #fff;
          -webkit-animation: bounce 2s infinite;
          animation: bounce 2s infinite; }
          
          
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  40% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px); }
  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px); } }
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  40% {
    -ms-transform: translateY(-20px);
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px); }
  60% {
    -ms-transform: translateY(-15px);
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px); } }
.video-controls-box {
  position: absolute !important;
  bottom: 40px;
  left: 0;
  width: 100%;
  z-index: 1; }

.video-controls-box a {
  display: inline-block;
  color: #fff;
  margin: 0 5px 0 0; }
  .video-controls-box a:hover {
    text-decoration: none; }

.bg-01 {
  background-image: url(../images/intro/01.jpg); }

.bg-02 {
  background-image: url(../images/intro/02.jpg); }

.bg-03 {
  background-image: url(../images/intro/03.jpg); }

.bg-04 {
  background-image: url(../images/shopinfo/top_image.jpg); }

.bg-05 {
  background-image: url(../images/intro/05.jpg); }

.bg-06 {
  background-image: url(../images/intro/06.jpg); }

.bg-07 {
  background-image: url(../images/intro/07.jpg); }

.bg-08 {
  background-image: url(../images/intro/08.jpg); }

.bg-09 {
  background-image: url(../images/intro/09.jpg); }

.bg-10 {
  background-image: url(../images/intro/10.jpg); }

.header-classic {
  display: block;
  height: auto;
  overflow-y: hidden;
  padding: 200px 0 90px 0; }
  .header-classic .header-wrapper-inner {
    display: block; }





/* イベント01桜 */
.header-inner1 {
  padding-top: 200px;
  background-color: black;
  background-image: url(../images/event/1_sakura/top_image.jpg);
  background-size: cover;
  text-align: center; }
  .header-inner1 .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner1 .breadcrumb a {
      color: inherit; }
    .header-inner1 .breadcrumb i {
      margin: 0 10px; }
      
      
      
/* イベント02春まつり */  
.header-inner2 {
  padding-top: 200px;
  background-color: black;
  background-image: url(../images/event/2_harumaturi/top_image.jpg);
  background-size: cover;
  text-align: center; }
  .header-inner2 .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner2 .breadcrumb a {
      color: inherit; }
    .header-inner2 .breadcrumb i {
      margin: 0 10px; }
      
      
      
/* イベント03獅子舞 */ 
.header-inner3 {
  padding-top: 200px;
  background-color: black;
  background-image: url(../images/event/3_sisimai/top_image.jpg);
  background-size: cover;
  text-align: center; }
  .header-inner3 .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner3 .breadcrumb a {
      color: inherit; }
    .header-inner3 .breadcrumb i {
      margin: 0 10px; }
      
      
      
/* イベント04夏まつり */ 
.header-inner4 {
  padding-top: 200px;
  background-color: black;
  background-image: url(../images/event/4_natumaturi/top_image.jpg);
  background-size: cover;
  text-align: center; }
  .header-inner4 .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner4 .breadcrumb a {
      color: inherit; }
    .header-inner4 .breadcrumb i {
      margin: 0 10px; }
      
      
      
/* イベント05初詣 */ 
.header-inner5 {
  padding-top: 200px;
  background-color: black;
  background-image: url(../images/event/5_hatumoude/top_image.jpg);
  background-size: cover;
  text-align: center; }
  .header-inner5 .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner5 .breadcrumb a {
      color: inherit; }
    .header-inner5 .breadcrumb i {
      margin: 0 10px; }            


/* spotのトップ */ 
.header-inner-spot {
  padding-top: 100px;
  background-color: black;
  background-image: url(../images/shopinfo/spot/topimage.gif);
  background-size: cover;
  text-align: center; }
  .header-inner-spot .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner-spot .breadcrumb a {
      color: inherit; }
    .header-inner-spot .breadcrumb i {
      margin: 0 10px; }  
      
      
      
/* foodのトップ */ 
.header-inner-food {
  padding-top: 120px;
  background-color: black;
  background-image: url(../images/shopinfo/food/topimage.gif);
  background-size: cover;
  text-align: center; }
  .header-inner-food .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner-food .breadcrumb a {
      color: inherit; }
    .header-inner-food .breadcrumb i {
      margin: 0 10px; }  



/* shopのトップ */ 
.header-inner-shop {
  padding-top: 120px;
  background-color: black;
  background-image: url(../images/shopinfo/shop/topimage.gif);
  background-size: cover;
  text-align: center; }
  .header-inner-shop .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner-shop .breadcrumb a {
      color: inherit; }
    .header-inner-shop .breadcrumb i {
      margin: 0 10px; }  


/* spaのトップ */ 
.header-inner-spa {
  padding-top: 120px;
  background-color: black;
  background-image: url(../images/shopinfo/spa/topimage.gif);
  background-size: cover;
  text-align: center; }
  .header-inner-spa .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner-spa .breadcrumb a {
      color: inherit; }
    .header-inner-spa .breadcrumb i {
      margin: 0 10px; }  


/* hotelのトップ */ 
.header-inner-hotel {
  padding-top: 120px;
  background-color: black;
  background-image: url(../images/shopinfo/hotel/topimage.gif);
  background-size: cover;
  text-align: center; }
  .header-inner-hotel .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner-hotel .breadcrumb a {
      color: inherit; }
    .header-inner-hotel .breadcrumb i {
      margin: 0 10px; }  


/* バス時刻表のトップ */ 
.header-inner-bus {
  padding-top: 120px;
  background-color: black;
  background-image: url(../images/shopinfo/bus/topimage.gif);
  background-size: cover;
  text-align: center; }
  .header-inner-bus .breadcrumb {
    background-color: transparent;
    color: rgba(254, 254, 255, 0.7); }
    .header-inner-bus .breadcrumb a {
      color: inherit; }
    .header-inner-bus .breadcrumb i {
      margin: 0 10px; }  





/* トップページのスライダー */ 
.flexslider {
  margin: 0;
  border: 0;
  display: block !important; }
  .flexslider .slides > li {
    background-position-x: center;
    background-position-y: center;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat; }
    .flexslider .slides > li .intro-wrapper {
      display: table;
      width: 100%;
      height: 100vh; }
      .flexslider .slides > li .intro-wrapper > .intro {
        display: table-cell;
        vertical-align: middle;
        position: relative;
        z-index: 1; }
        




.slider-classic {
  display: block;
  height: auto;
  overflow-y: hidden; }
  .slider-classic .flexslider .slides > li {
    height: auto !important;
    padding: 200px 0 90px 0;
    min-height: auto !important; }

.flex-direction-nav a {
  height: 50px;
  top: 50vh; }

.flex-direction-nav a.flex-prev:before {
  content: "\f3d2"; }

.flex-direction-nav a.flex-next:before {
  content: "\f3d3"; }

.flex-direction-nav a:before {
  font-family: "Ionicons";
  color: white; }













.team {
  background-color: bg-base-color; }
  .team .lborder {
    border-left: 1px solid #dadada; }
    @media only screen and (max-width: 767px) {
      .team .lborder {
        border-left: none; } }
  .team .rborder {
    border-right: 1px solid #dadada; }
    @media only screen and (max-width: 767px) {
      .team .rborder {
        border-right: none; } }
  .team .team-bio {
    margin-bottom: 15px;
    padding: 0 40px; }
    @media only screen and (max-width: 992px) {
      .team .team-bio {
        padding: 0; } }
    @media only screen and (max-width: 767px) {
      .team .team-bio {
        margin-bottom: 45px; } }
    .team .team-bio figure {
      overflow: hidden;
      padding: 40px; }
      .team .team-bio figure img {
        border-radius: 100%; }
      @media only screen and (max-width: 767px) {
        .team .team-bio figure {
          padding: 15px 22%; } }
    .team .team-bio .team-description {
      text-align: center; }
      .team .team-bio .team-description .member-name {
        font-size: 20px;
        text-transform: capitalize;
        letter-spacing: 1px;
        margin-bottom: 5px; }
      .team .team-bio .team-description .designation {
        text-transform: uppercase;
        font-size: 12px; }
  .team .team-social {
    padding: 15px;
    padding-bottom: 0; }
  .team .social-block {
    margin: 0;
    list-style-type: none;
    padding: 0;
    text-align: center; }
    .team .social-block li {
      display: inline-block;
      margin-right: 10px; }
      .team .social-block li a {
        display: block;
        font-size: 16px;
        color: #8E8E8E;
        padding: 2px 8px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        .team .social-block li a:hover {
          color: #000000; }

.expertise {
  background: url(../images/backgrounds/bg-expertise.jpg) no-repeat center center; }
  .expertise .section-heading h1, .expertise .section-heading p {
    color: #ffffff; }
  .expertise .section-heading::after {
    background-color: white; }
  .expertise .expertise-description {
    margin-bottom: 25px; }
    @media only screen and (max-width: 767px) {
      .expertise .expertise-description {
        margin-bottom: 35px; } }
  .expertise .nav-tabs {
    border-bottom: 0; }
    .expertise .nav-tabs > li > a {
      margin-right: 4px;
      border: 0;
      border-radius: 0;
      border-bottom: 2px solid rgba(227, 225, 225, 0);
      color: #fdfdfd;
      font-weight: 400;
      text-transform: uppercase;
      -webkit-transition: all 0.3s;
      transition: all 0.3s; }
      .expertise .nav-tabs > li > a:hover {
        border-bottom-color: #e3e1e1; }
    .expertise .nav-tabs > li.active > a, .expertise .nav-tabs > li.active > a:focus, .expertise .nav-tabs > li.active > a:hover {
      color: #fdfdfd;
      background: none;
      border: 0;
      border-bottom: 2px solid #e3e1e1; }
  .expertise .tab-content {
    margin-top: 10px;
    padding: 10px;
    color: #E3E1E1; }
    .expertise .tab-content p {
      color: #fff; }
    .expertise .tab-content .tab-left {
      float: left;
      margin-right: 20px; }
    .expertise .tab-content .tab-right {
      padding-right: 40px; }
      @media only screen and (max-width: 767px) {
        .expertise .tab-content .tab-right {
          padding-right: 0; } }
  .expertise .nav > li > a:focus, .expertise .nav > li > a:hover {
    text-decoration: none;
    background-color: #eee;
    background: none; }
  .expertise .progress-heading {
    color: #ffffff;
    font-weight: 400;
    margin-bottom: 10px;
    font-size: 14px; }
  .expertise .progress {
    background-color: #313131;
    border-radius: 0;
    height: 3px; }
  .expertise .progress-bar {
    background-color: #fdfdfd;
    width: 0;
    -webkit-transition: width 3s cubic-bezier(0, 0, 0.2, 1);
    transition: width 3s cubic-bezier(0, 0, 0.2, 1); }

@media (min-width: 992px) {
  .expertise .expertise-description {
    margin-bottom: 0; } }
.video-player {
  background: url(../images/backgrounds/bg-video.jpg) no-repeat center bottom;
  background-size: cover;
  color: #ffffff;
  text-transform: uppercase; }
  .video-player .video-left {
    text-align: center;
    font-weight: 300;
    font-size: 36px;
    line-height: 36px;
    text-transform: uppercase;
    margin-top: 0;
    margin-bottom: 0px; }
    @media only screen and (max-width: 767px) {
      .video-player .video-left {
        margin-bottom: 20px; } }
  .video-player .video-icon {
    color: #ffffff;
    font-size: 38px;
    border: 1px solid #ffffff;
    width: 68px;
    height: 68px;
    position: relative;
    display: block;
    margin: 4px auto 0; }
    @media only screen and (max-width: 767px) {
      .video-player .video-icon {
        margin-bottom: 20px; } }
    .video-player .video-icon i {
      position: absolute;
      top: 14px;
      left: 28px; }
    .video-player .video-icon:hover, .video-player .video-icon:active, .video-player .video-icon:focus {
      color: #000000; }
  .video-player .video-right {
    color: #ffffff;
    font-size: 16px;
    line-height: 20px; }
    @media only screen and (max-width: 767px) {
      .video-player .video-right {
        text-align: center; } }

@media (min-width: 768px) {
  .video-player {
    padding: 190px 0px; }
    .video-player .video-left {
      text-align: right;
      padding-right: 30px; }
    .video-player .video-right {
      padding-left: 30px;
      padding-top: 7px; }
      .video-player .video-right h2 {
        margin-top: 0; } }
#video-container {
  display: none; }

.portfolio {
  background-color: #f3f3f3;
  padding-bottom: 0; }
  .portfolio .section-content {
    color: #fdfdfd; }
    .portfolio .section-content .portfolio-images {
      height: 400px;
      overflow-x: hidden;
      overflow-y: auto;
      margin-bottom: 26px;
      position: relative; }
    .portfolio .section-content .isotop-filter {
      text-align: center;
      margin-bottom: 35px; }
    .portfolio .section-content .element-item {
      margin-bottom: 15px;
      cursor: pointer; }
  .portfolio .portfolio-grid {
    padding: 5px; }

.da-thumbs {
  list-style: none;
  position: relative;
  padding: 0;
  margin: 0; }

.da-thumbs li {
  float: left;
  background: #f3f3f3;
  padding: 0px;
  position: relative;
  width: 25%;
  padding: 2px; }
  @media only screen and (max-width: 992px) {
    .da-thumbs li {
      width: 33%; } }
  @media only screen and (max-width: 767px) {
    .da-thumbs li {
      width: 100%; } }

.portfolio-grid.three-col li {
  width: 33.333%; }
  @media only screen and (max-width: 992px) {
    .portfolio-grid.three-col li {
      width: 33%; } }
  @media only screen and (max-width: 767px) {
    .portfolio-grid.three-col li {
      width: 100%; } }
.portfolio-grid.two-col li {
  width: 50%; }

.da-thumbs li.x2 {
  width: 50%; }

.da-thumbs li a,
.da-thumbs li a img {
  display: block;
  position: relative;
  width: 100%; }

.da-thumbs li a {
  overflow: hidden; }

.da-thumbs li a .portfolio-detail-overlay {
  position: absolute;
  background: #fff;
  background: rgba(0, 0, 0, 0.6);
  padding: 20px;
  text-align: center;
  width: 100%;
  height: 100%; }

.da-thumbs li a div span {
  text-transform: none;
  color: rgba(255, 255, 255, 0.85);
  padding: 2px;
  font-size: 14px;
  display: block;
  letter-spacing: 1px; }

.portfolio-detail-overlay h4 {
  color: #FFF;
  margin-top: 0px;
  font-size: 18px;
  margin-bottom: 15px;
  letter-spacing: 1px;
    font-family:"Noto Serif JP", Yu Mincho, Roboto, sans-serif;  }

.portfolio-detail-overlay .middle-align-wrap {
  display: table;
  height: 100%;
  width: 100%; }
  .portfolio-detail-overlay .middle-align-wrap .middle-align-cell {
    display: table-cell;
    vertical-align: middle; }

.btn-isotop {
  background: none;
  font-size: 15px;
  font-weight: 600;
  border: 0;
  padding: 6px 13px 15px;
  color: #000;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden; }
  .btn-isotop:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    right: 50%;
    top: 20px;
    background: #573D17;
    height: 2px;
    -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; }
  .btn-isotop:active, .btn-isotop:focus, .btn-isotop:hover {
    color: #573D17;
    box-shadow: none;
    outline: none !important; }
    .btn-isotop:active:before, .btn-isotop:focus:before, .btn-isotop:hover:before {
      left: 0;
      right: 0; }
      


/* 店舗ページの概要部分 */ 
.portfolio-details-single {
  margin-top: 20px; }
  
  .portfolio-details-single h3 {
    margin-bottom: 20px;
    position: relative; }
    .portfolio-details-single h3:before {
      position: absolute;
      content: '';
      width: 60px;
      background-color: #573D17;
      height: 2px;
      bottom: -10px; }
      
    .portfolio-details-single h4 {
    margin-bottom: 20px;
    position: relative; }
    .portfolio-details-single h4:before {
      position: absolute;
      content: '';
      width: 60px;
      background-color: #573D17;
      height: 2px;
      bottom: -10px; }
      
  .portfolio-details-single ul {
    list-style: none;
    line-height: 2.0em;
    padding-left: 0; }
    
    






.testimonial {
  background: url(../images/top/newsimage.jpg) no-repeat center center;
  color: #fdfdfd;
  background-size: cover; }
  .testimonial .carosel-wrapper {
    position: relative; }
    @media only screen and (max-width: 767px) {
      .testimonial .carosel-wrapper {
        margin-top: 40px; } }
    .testimonial .carosel-wrapper .client-face-holder {
      position: absolute;
      width: 106px;
      height: 106px;
      overflow: hidden;
      border-radius: 50%;
      top: -50px;
      left: -50px;
      z-index: 1;
      border: 2px solid rgba(255, 255, 255, 0.2); }



      @media only screen and (max-width: 767px) {
        .testimonial .carosel-wrapper .client-face-holder {
          left: 50%;
          margin-left: -53px; } }
      .testimonial .carosel-wrapper .client-face-holder #clientFace {
        height: -webkit-calc(100% - 6px);
        height: calc(100% - 6px);
        position: absolute;
        width: -webkit-calc(100% - 6px);
        width: calc(100% - 6px);
        background-color: #000;
        background-image: url(../images/top/news04.gif);
        background-size: cover;
        background-position-x: center;
        background-position-y: center;
        border-radius: 50%;
        left: 3px;
        top: 3px;
        -webkit-transition: all 0.4s ease-in;
        transition: all 0.4s ease-in; }


  .testimonial #testimonials-carousel {
    border: 2px solid rgba(255, 255, 255, 0.2);
    padding: 40px 80px 40px 100px; }
    @media only screen and (max-width: 767px) {
      .testimonial #testimonials-carousel {
        padding: 70px 30px 30px 30px; } }
    .testimonial #testimonials-carousel .review {
      position: relative; }

      /* topページのNEWS部分　タイトル */ 
      .testimonial #testimonials-carousel .review blockquote {
          font-family:"Noto Sans JP", Yu Gothic, Roboto, sans-serif; 
        border: 0;
        padding: 0;
        letter-spacing: 1px;
        font-size: 15px;
        color: #000000;
        font-weight: 500;
        line-height: 24px; }

    /* topページのNEWS部分 文書 */ 
      .testimonial #testimonials-carousel .review .reviewer {
    font-family:"Noto Serif JP", Yu Mincho, Roboto, sans-serif; 
        font-weight: 500;
        color: #000000;
        text-align: center;;
        font-size: 20px;
        text-transform: none;
        margin-bottom: 0px; }


      .testimonial #testimonials-carousel .review .designation {
        text-transform: none;
        margin: 0;
        color: #555555;
        font-size: 14px;
        line-height: 16px; }


  .testimonial .quote {
    font-family:"Noto Serif JP", Yu Mincho, Roboto, sans-serif;    
    position: absolute;
    font-size: 14px;
    font-weight: 100;
    font-style: italic;
    z-index: -1; }
    .testimonial .quote.left {
      line-height: 100%;
      top: 25px;
      left: 40px; }
      @media only screen and (max-width: 767px) {
        .testimonial .quote.left {
          top: 36px;
          left: 0; } }
    .testimonial .quote.right {
      line-height: 0;
      bottom: 50px;
      right: 56px; }
  .testimonial .owl-controls {
    position: absolute;
    top: -webkit-calc(50% - 52px);
    top: calc(50% - 52px);
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .testimonial .owl-controls {
        top: -webkit-calc(50% - 22px);
        top: calc(50% - 22px); } }
    .testimonial .owl-controls a {
      color: #FFF;
      font-size: 24px;
      padding: 40px;
      line-height: 0;
      position: absolute; }
      .testimonial .owl-controls a:hover, .testimonial .owl-controls a:active, .testimonial .owl-controls a:focus {
        text-decoration: none; }
      @media only screen and (max-width: 767px) {
        .testimonial .owl-controls a {
          padding: 10px; } }
      .testimonial .owl-controls a.prev {
        left: -90px; }
        @media only screen and (max-width: 767px) {
          .testimonial .owl-controls a.prev {
            left: 0; } }
      .testimonial .owl-controls a.next {
        right: -90px; }
        @media only screen and (max-width: 767px) {
          .testimonial .owl-controls a.next {
            right: 0; } }

.about-us .section-content .about-content {
  text-align: center;
  margin-bottom: 0;
  padding: 25px; }
  .about-us .section-content .about-content.left {
    text-align: right; }
  .about-us .section-content .about-content.right {
    text-align: left; }
  @media only screen and (max-width: 992px) {
    .about-us .section-content .about-content {
      padding: 0; } }
  @media only screen and (max-width: 767px) {
    .about-us .section-content .about-content {
      margin-bottom: 30px; }
      .about-us .section-content .about-content.left, .about-us .section-content .about-content.right {
        text-align: center; }
      .about-us .section-content .about-content.center {
        margin-bottom: 40px; }
      .about-us .section-content .about-content.right {
        margin-bottom: 0; } }
.about-us .section-content figure.about-content {
  padding-top: 10px; }
.about-us .section-content h4 {
  margin-top: 25px; }
  @media only screen and (max-width: 992px) {
    .about-us .section-content h4 {
      margin-top: 0;
      margin-bottom: 15px; } }

.services {
  background: #ffffff;
  background-size: cover; }
  .services .service {
    padding: 30px 15px;
    position: relative;
    margin-bottom: 20px;
    -webkit-transition: all 0.3s cubic-bezier(0.63, 0.32, 0.05, 0.39) 0s;
    transition: all 0.3s cubic-bezier(0.63, 0.32, 0.05, 0.39) 0s; }
    .services .service.last {
      margin-bottom: 0; }
    @media only screen and (max-width: 992px) {
      .services .service {
        padding: 2px;
        margin-bottom: 15px; } }
    .services .service .service-icon span {
      font-size: 4em; }
  .services .section-content .secondrow .service {
    margin-bottom: 0; }
    @media only screen and (max-width: 767px) {
      .services .section-content .secondrow .service {
        margin-bottom: 20px; }
        .services .section-content .secondrow .service.last {
          margin-bottom: 0; } }
          
          
  /*ロールオーバーの部分
  .services .service::before {
    content: '';
    position: absolute;
    top: -3px;
    left: 1px;
    width: -webkit-calc(100% - 2px);
    width: calc(100% - 2px);
    height: 103%;
    border-top: 1px solid rgba(253, 253, 253, 0);
    border-bottom: 1px solid rgba(253, 253, 253, 0);
    -webkit-transition: all 0.5s cubic-bezier(0.63, 0.32, 0.05, 0.39) 0s;
    transition: all 0.5s cubic-bezier(0.63, 0.32, 0.05, 0.39) 0s; }
  .services .service::after {
    content: '';
    position: absolute;
    top: 1px;
    left: -3px;
    width: -webkit-calc(100% + 6px);
    width: calc(100% + 6px);
    height: 99%;
    border-right: 1px solid rgba(253, 253, 253, 0);
    border-left: 1px solid rgba(253, 253, 253, 0);
    -webkit-transition: all 0.5s cubic-bezier(0.63, 0.32, 0.05, 0.39) 0s;
    transition: all 0.5s cubic-bezier(0.63, 0.32, 0.05, 0.39) 0s; }
  .services .service:hover {
    background-color: #F3F3F3; }
  .services .service:hover::before,
  .services .service:hover::after {
    border-color: #FAFAFA; }
    */

.funfacts {
  background: url(../images/backgrounds/bg-fun-fact.jpg) no-repeat center center;
  background-size: cover; }
  .funfacts .counter-box {
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .funfacts .counter-box {
        margin-bottom: 35px; }
        .funfacts .counter-box.last {
          margin-bottom: 0; } }
    .funfacts .counter-box .counter-icon span {
      font-size: 4em;
      color: #fff; }
    .funfacts .counter-box .count {
      font-size: 24px;
      text-transform: uppercase;
      letter-spacing: 2px;
      color: #fff;
      margin-top: 20px;
      margin-bottom: 10px; }
      @media only screen and (max-width: 767px) {
        .funfacts .counter-box .count {
          margin: 0; } }
    .funfacts .counter-box .count-description {
      color: #fff;
      font-size: 15px;
      margin-top: 15px;
      text-transform: uppercase;
      letter-spacing: 1px; }
      @media only screen and (max-width: 767px) {
        .funfacts .counter-box .count-description {
          margin: 0; } }

.contact {
  background-color: bg-base-color; }
  .contact .section-content {
    color: #000; }
    .contact .section-content h5 {
      margin-bottom: 30px;
      letter-spacing: 1px;
      text-transform: none; }
    .contact .section-content .contact-form {
      margin-bottom: 30px; }
      @media only screen and (max-width: 767px) {
        .contact .section-content .contact-form {
          margin-bottom: 60px; } }
      .contact .section-content .contact-form .form-group {
        margin-bottom: 24px; }
      .contact .section-content .contact-form .form-control {
        color: #000;
        border: 1px solid #DDD;
        padding: 6px 20px;
        border-radius: 2px;
        height: auto;
        box-shadow: none; }
      .contact .section-content .contact-form .form-control:focus {
        box-shadow: none;
        outline: none; }
      .contact .section-content .contact-form textarea {
        min-height: 160px; }
    .contact .section-content #map {
      height: 500px; }
    .contact .section-content .google-map {
      margin-bottom: 30px; }
    .contact .section-content .google-map iframe {
      width: 100%; }
    .contact .section-content .contact-info-wrap h5 {
      margin-bottom: 15px !important;
      text-decoration: none; }
    .contact .section-content .contact-info-wrap .contact-info {
      line-height: 20px;
      font-size: 12px;
      letter-spacing: 1px; }

@media (min-width: 768px) {
  .contact .section-content .contact-form {
    margin-bottom: 0; } }
.contact-full-width {
  padding-bottom: 0 !important; }
  .contact-full-width .contact-info-wrap {
    margin: 60px 0; }
  .contact-full-width #map {
    height: 400px; }

.clients {
  background: black;
  background-size: cover;
  padding: 60px 0; }
  .clients .client-image {
    margin-bottom: 20px; }
    .clients .client-image img {
      opacity: 0.75; }
    .clients .client-image img:hover {
      opacity: 1; }
  .clients .owl-theme .owl-controls {
    height: 0px;
    margin: 20px 0 -20px 0; }

.client-overlay {
  position: relative; }

.client-overlay::before {
  content: '';
  background-color: rgba(48, 48, 48, 0.48);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1; }

@media (min-width: 768px) {
  .clients .client-image {
    margin-bottom: 0; } }
    
    
    
.blog {
  background-color: #F3F3F3; }
  
.blog-post {
  background-color: #ffffff; }

.blog .blog-post {
  margin-bottom: 30px; }
  .blog .blog-post header {
    position: relative; }
    .blog .blog-post header .date {
      background-color: #fdfdfd;
      position: absolute;
      padding: 10px;
      text-align: center;
      font-weight: 500;
      z-index: 9;
      color: #222222; }
  .blog .blog-post .blog-content {
    padding: 15px 28px;
    border: 1px solid #cccccc; }
    .blog .blog-post .blog-content h4 {
      margin: 20px 0;
      letter-spacing: 1px; }
      .blog .blog-post .blog-content h4 a {
        color: #333; }
    .blog .blog-post .blog-content .post-meta {
      text-transform: uppercase;
      margin-bottom: 18px;
      padding-bottom: 10px;
      font-size: 12px;
      border-bottom: 1px solid #999999; }
      .blog .blog-post .blog-content .post-meta span {
        color: #CCC; }
        .blog .blog-post .blog-content .post-meta span:first-child a {
          color: #848484; }
        .blog .blog-post .blog-content .post-meta span a {
          color: #CCC;
          border-bottom: 1px transparent; }
        .blog .blog-post .blog-content .post-meta span a:hover {
          text-decoration: none;
          border-bottom-style: solid;
          border-color: inherit; }
    .blog .blog-post .blog-content .post-meta span {
      padding-right: 10px;
      border-right: 1px solid #CCC;
      margin-right: 10px; }
      .blog .blog-post .blog-content .post-meta span:last-child {
        margin-right: 0;
        border-right: 0;
        padding-right: 0; }
    .blog .blog-post .fon p {
      color: #4B4B4B;
      line-height: 22px; }
  .blog .blog-post footer {
    border: 1px solid #DDD;
    padding: 0px 15px; }
    .blog .blog-post footer .comment-count {
      color: #000;
      position: relative;
      padding-left: 25px; }
    .blog .blog-post footer .comment-count:hover,
    .blog .blog-post footer .comment-count:focus {
      color: #000; }
    .blog .blog-post footer .read-more {
      color: #000;
      position: relative;
      padding-left: 25px;
      padding-right: 0;
      text-transform: uppercase; }
    .blog .blog-post footer .read-more:hover,
    .blog .blog-post footer .read-more:focus {
      color: #000; }

@media (min-width: 768px) {
  .blog .blog-post header .image-slider-carousel .carousel-control.left {
    top: 200px;
    bottom: 5px;
    left: 220px; }
  .blog .blog-post header .image-slider-carousel .carousel-control.right {
    top: 200px; } }
@media (min-width: 992px) {
  .blog .blog-post header .image-slider-carousel .carousel-control.left {
    top: 210px;
    bottom: 5px;
    left: 235px; }
  .blog .blog-post header .image-slider-carousel .carousel-control.right {
    top: 210px;
    right: 10px;
    bottom: 5px; } }
    
.blog-standard .blog-post {
  margin-bottom: 80px; }
  .blog-standard .blog-post:last-child {
    margin-bottom: 0; }
  .blog-standard .blog-post .featured-image {
    margin-bottom: 30px; }
  .blog-standard .blog-post .post-title {
    margin-bottom: 15px; }
    .blog-standard .blog-post .post-title > a {
      color: #5c5c5c;}
      .blog-standard .blog-post .post-title > a:hover {
        color: #000000;
        text-decoration: none; }
        
  .blog-standard .blog-post .post-meta {
    color: silver;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 11px;
    margin-bottom: 30px; }
    .blog-standard .blog-post .post-meta a {
      color: #656565; }
    .blog-standard .blog-post .post-meta span {
      margin: 0 6px; }
  .blog-standard .blog-post .read-more {
    margin-top: 25px; }
    .blog-standard .blog-post .read-more a {
      text-transform: uppercase;
      color: black;
      -webkit-transition: all 0.2s;
      transition: all 0.2s; }
      .blog-standard .blog-post .read-more a:hover {
        color: silver;
        text-decoration: none; }



/*overriding bootstrap's default pagination */
.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px; }

.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px; }

.pagination > li {
  display: inline-block;
  margin-right: 8px; }

.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
  background-color: black;
  border-color: black; }

.pagination > li > a, .pagination > li > span {
  color: #909090; }

.sidebar {
  padding: 0 0 0 30px; }
  .sidebar .widget {
    margin-bottom: 60px; }
    .sidebar .widget.popular-posts .widget-content ul {
      padding: 15px 0 0 0;
      list-style: none;
      color: #b0b0b0; }
      .sidebar .widget.popular-posts .widget-content ul li {
        margin-bottom: 30px; }
      .sidebar .widget.popular-posts .widget-content ul .thumb {
        margin-right: 10px;
        margin-top: -10px; }
      .sidebar .widget.popular-posts .widget-content ul .title {
        color: gray; }
    .sidebar .widget.popular-tags a {
      margin-bottom: 6px; }
    .sidebar .widget.categories ul {
      list-style: none;
      padding: 0; }
      .sidebar .widget.categories ul li {
        line-height: 3em; }
        .sidebar .widget.categories ul li:before {
          content: "\f101";
          font: normal normal normal 14px/1 FontAwesome;
          margin-right: 15px; }
        .sidebar .widget.categories ul li a {
          color: black; }
          .sidebar .widget.categories ul li a:hover {
            color: gray; }

.left-sidebar .sidebar {
  padding: 0 30px 0 0; }

.blog-grid .blog-element {
  max-height: 290px;
  overflow: hidden; }
  .blog-grid .blog-element img {
    width: 100%; }

#disqus_thread {
  margin-top: 40px; }

.pricing {
  background-color: bg-base-color; }
  .pricing .price-box {
        border: 1px solid #999999;
    background-color: #f9f9f9;
    color: #000;
    text-align: center;
    padding: 40px 15px 40px;
    margin-top: 0px; 
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      .pricing .price-box.last {
        margin-bottom: 0; } }
    .pricing .price-box h3 {
      margin-bottom: 10px;
      text-transform: uppercase;
      font-size: 15px;
      margin-top: 0; }
    .pricing .price-box .btn-white {
      border-color: #e3e3e3; }
      
    .pricing .price-box .price-info {
      text-align: left;
      position: relative;
      padding: 0 15px 15px;
      margin-bottom: 10px; }
      .pricing .price-box .price-info .price {
        text-align: center;
        color: #313131;
        font-size: 22px;
        font-weight: 600;
        margin-bottom: 20px; }
        .pricing .price-box .price-info .price sup {
          font-size: 18px;
          top: -18px;
          left: -2px; }
      .pricing .price-box .price-info ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        .pricing .price-box .price-info ul li {
          display: block;
          margin-bottom: 5px; }
        .pricing .price-box .price-info ul .disabled {
          color: #c7c7c7;
          text-decoration: line-through; }
          
          
  .pricing .featured {
    border: 1px solid #000;
    background-color: #FFF; }
    .pricing .featured h3 {
      letter-spacing: 1px; }




.subscribe {
  background: #000; }
  .subscribe .btn-default {
    border-color: #ffffff;
    color: #000; }
  .subscribe .subscribe-text {
    padding-left: 60px;
    position: relative;
    margin-bottom: 40px; }
    .subscribe .subscribe-text h2 {
      margin-top: 0; }
    .subscribe .subscribe-text h2, .subscribe .subscribe-text span {
      position: relative;
      z-index: 2;
      color: #fff; }
    .subscribe .subscribe-text span {
      text-transform: uppercase; }
  .subscribe .subscribe-text::before {
    content: '';
    border-right: 1px solid #313131;
    position: absolute;
    right: 0;
    top: -15px;
    bottom: -15px;
    border-width: 3px; }
    @media only screen and (max-width: 767px) {
      .subscribe .subscribe-text::before {
        display: none; } }
  .subscribe .subscribe-text::after {
    position: absolute;
    content: "\f003";
    font-family: FontAwesome;
    color: #313131;
    z-index: 1;
    top: -29px;
    left: -12px;
    font-size: 6em;
    -webkit-transform: rotate(-50deg);
    -ms-transform: rotate(-50deg);
    transform: rotate(-50deg); }
  .subscribe .subscribe-form {
    margin-top: 10px;
    margin-bottom: 10px; }
    .subscribe .subscribe-form .input-group-addon {
      padding: 0;
      border: 0;
      background: rgba(255, 255, 255, 0.9);
      border-top-right-radius: 2px;
      border-bottom-right-radius: 2px;
      -webkit-transition: background 0.3s;
      transition: background 0.3s; }
      .subscribe .subscribe-form .input-group-addon:hover {
        background: rgba(255, 255, 255, 0.75); }
  .subscribe .subscribe-form input[type="email"] {
    background: #FFF;
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: none;
    color: #000000;
    border-top-left-radius: 2px !important;
    border-bottom-left-radius: 2px !important; }
  .subscribe .subscribe-form input[type="submit"] {
    border: 0;
    color: #000;
    background-color: transparent; }
  .subscribe .spam-text {
    color: rgba(255, 255, 255, 0.9);
    text-transform: uppercase;
    font-size: 12px; }
    @media only screen and (max-width: 767px) {
      .subscribe .spam-text {
        text-align: center;
        margin-bottom: 0; } }

@media (min-width: 768px) {
  .subscribe .subscribe-text {
    margin-bottom: 0; } }
.why-choose-us .why-explain {
  position: relative; }
  .why-choose-us .why-explain::before {
    content: "\f00c";
    font-family: FontAwesome;
    position: absolute;
    color: #EAEAEA;
    border: 1px solid #E5E5E5;
    height: 36px;
    width: 36px;
    text-align: center;
    line-height: 36px;
    border-radius: 100%;
    border-radius: 100%;
    background-color: #ffffff; }
    @media only screen and (max-width: 992px) {
      .why-choose-us .why-explain::before {
        display: none; } }
  .why-choose-us .why-explain.top::before {
    top: 20px;
    left: 0; }
  .why-choose-us .why-explain.bottom::before {
    left: 0; }
@media only screen and (max-width: 767px) {
  .why-choose-us h4 {
    margin-bottom: 10px; }
  .why-choose-us p {
    margin-bottom: 35px; }
    .why-choose-us p.last {
      margin-bottom: 0px; }
  .why-choose-us .why-explain-wrap {
    text-align: center;
    margin-bottom: 35px;
    border-bottom: 1px solid #dadada; }
    .why-choose-us .why-explain-wrap.last {
      border-bottom: none;
      margin-bottom: 0; } }

@media (min-width: 768px) {
  .why-choose-us .why-us-image {
    margin-bottom: 60px;
    margin-top: 30px; } }
@media (min-width: 992px) {
  .why-choose-us h4 {
    margin: 0px 0px 15px 25px; }
  .why-choose-us .section-content p {
    padding: 25px; }
  .why-choose-us .why-explain {
    margin-right: 25px; }
    .why-choose-us .why-explain::before {
      -webkit-transition: 0.6s;
      transition: 0.6s;
      -webkit-transform-style: preserve-3d;
      transform-style: preserve-3d; }
    .why-choose-us .why-explain.top {
      border-top: 1px solid #E5E5E5;
      border-right: 1px solid #E5E5E5;
      -webkit-perspective: 1000;
      perspective: 1000; }
      .why-choose-us .why-explain.top::before {
        top: -19px;
        left: -32px; }
      .why-choose-us .why-explain.top::after {
        content: "";
        position: absolute;
        height: 35px;
        right: 0;
        bottom: -35px;
        border-top: 1px solid #E5E5E5;
        border-left: 1px solid #E5E5E5; }
    .why-choose-us .why-explain.top-1::after {
      width: 35%; }
    .why-choose-us .why-explain.top-2::after {
      width: 70%; }
    .why-choose-us .why-explain.top-3::after {
      width: 105%; }
    .why-choose-us .why-explain.bottom {
      border-bottom: 1px solid #E5E5E5;
      border-right: 1px solid #E5E5E5;
      padding: 0;
      -webkit-perspective: 1000;
      perspective: 1000; }
      .why-choose-us .why-explain.bottom h4 {
        padding-top: 15px; }
      .why-choose-us .why-explain.bottom::before {
        bottom: -19px;
        left: -32px; }
      .why-choose-us .why-explain.bottom::after {
        content: "";
        position: absolute;
        height: 35px;
        top: -35px;
        right: 0;
        border-bottom: 1px solid #E5E5E5;
        border-left: 1px solid #E5E5E5; }
    .why-choose-us .why-explain.bottom-1::after {
      width: 0;
      right: -1px; }
    .why-choose-us .why-explain.bottom-2::after {
      width: 25%; }
    .why-choose-us .why-explain.bottom-3::after {
      width: 65%; }
  .why-choose-us .why-explain-wrap:hover .why-explain::before {
    background-color: #fdfdfd;
    color: #313131; } }
    
    
.our-process {
  background-color: #ffffff;
  padding-bottom: 0;
  /* Devider */ }
  .our-process .section-content {
    margin: 0 136px; }
    @media only screen and (max-width: 992px) {
      .our-process .section-content {
        margin: 0; } }
        
        
  .our-process .our-process-image {
    height: 8em;
    width: 8em;
    border: 2px solid #DF591D;
    border-radius: 50%;
    text-align: center;
    display: table;
    margin-bottom: 10px;
    float: right;
    margin-left: 25px; }
    @media only screen and (max-width: 767px) {
      .our-process .our-process-image {
        margin: 0;
        height: 5em;
        width: 5em; } }
        
    .our-process .our-process-image span {
      font-size: 4em;
      color: #DF591D;
      display: table-cell;
      vertical-align: middle; }
      
      @media only screen and (max-width: 767px) {
        .our-process .our-process-image span {
          font-size: 3em; } }
          
  .our-process .our-process-image.left {
    float: left;
    margin-right: 25px;
    margin-left: 0px; }
  .our-process .process {
    margin: 80px 0; }
    .our-process .process .our-process-text.right {
      text-align: left; }
    .our-process .process .our-process-text.left {
      text-align: right; }
      
      
  .our-process .divider {
    margin-top: 20px;
    height: 1px;
    width: -webkit-calc(100% - 112px);
    width: calc(100% - 112px);
    position: relative;
    border-bottom: 2px dotted #555555;
    margin: 0 auto; }
    .our-process .divider img {
      position: absolute;
      left: -webkit-calc(50% - 68px);
      left: calc(50% - 68px);
      top: -47px; }
      
  .our-process .divider-right::after {
    content: "";
    position: absolute;
    top: 2px;
    height: 25px;
    left: 0;
    border-left: 2px dotted #555555; }
    
  .our-process .divider-right::before {
    content: "";
    position: absolute;
    top: -26px;
    height: 25px;
    right: 0;
    border-left: 2px dotted #555555; }
    
  .our-process .divider-left::after {
    content: "";
    position: absolute;
    top: -26px;
    height: 25px;
    left: 0;
    border-left: 2px dotted #555555; }
    
  .our-process .divider-left::before {
    content: "";
    position: absolute;
    top: 2px;
    height: 25px;
    right: 0;
    border-left: 2px dotted #555555; }







.gallery .og-grid li > a {
  border: none;
  outline: none;
  display: block;
  position: relative; }
.gallery .og-close::before, .gallery .og-close::after {
  content: '';
  position: absolute;
  width: 100%;
  top: 50%;
  height: 1px;
  background: #888;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }
.gallery .og-fullimg, .gallery .og-details {
  width: 50%;
  float: left;
  height: 100%;
  overflow: hidden;
  position: relative; }
.gallery .og-grid {
  list-style: none;
  padding: 20px 0;
  margin: 0 auto;
  text-align: center;
  width: 100%; }
  .gallery .og-grid li {
    display: inline-block;
    vertical-align: top;
    height: 250px;
    margin: 10px -2px;
    width: 33.33%;
    padding: 10px; }
    @media only screen and (max-width: 767px) {
      .gallery .og-grid li {
        width: 100%; } }
    .gallery .og-grid li > a {
      height: 250px;
      background-size: cover;
      background-repeat: no-repeat; }
    .gallery .og-grid li.og-expanded {
      margin-bottom: 35px; }
      .gallery .og-grid li.og-expanded > a::after {
        top: auto;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        bottom: -15px;
        position: absolute;
        pointer-events: none;
        border-bottom-color: #ddd;
        border-width: 15px;
        left: 50%;
        margin: -20px 0 0 -15px; }
  .gallery .og-grid.og-grid-4col li {
    width: 25%; }
    @media only screen and (max-width: 767px) {
      .gallery .og-grid.og-grid-4col li {
        width: 100%; } }
  .gallery .og-grid.og-grid-5col li {
    width: 20%; }
    @media only screen and (max-width: 767px) {
      .gallery .og-grid.og-grid-5col li {
        width: 100%; } }
.gallery .og-expander {
  position: absolute;
  background: #ddd;
  top: auto;
  left: 0;
  width: 100%;
  margin-top: 15px;
  text-align: left;
  height: 0;
  overflow: hidden; }
.gallery .og-expander-inner {
  padding: 50px 30px;
  height: 100%; }
.gallery .og-close {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 20px;
  right: 20px;
  cursor: pointer; }
  .gallery .og-close:hover::before {
    background: #333; }
  .gallery .og-close:hover::after {
    background: #333; }
.gallery .og-close::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg); }
.gallery .og-fullimg {
  text-align: center; }
  .gallery .og-fullimg img {
    display: inline-block;
    max-height: 100%;
    max-width: 100%; }
.gallery .og-details {
  padding: 0 40px 0 20px; }
  .gallery .og-details h3 {
    font-weight: 300;
    font-size: 52px;
    padding: 40px 0 10px;
    margin-bottom: 10px; }
  .gallery .og-details p {
    color: #999; }
  .gallery .og-details a {
    margin: 30px 0 0;
    outline: none; }
.gallery .og-loading {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #ddd;
  box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ccc;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  -webkit-animation: loader 0.5s infinite ease-in-out both;
  animation: loader 0.5s infinite ease-in-out both; }
@-webkit-keyframes loader {
  0% {
    background: #ddd; }
  33% {
    background: #ccc;
    box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd; }
  66% {
    background: #ccc;
    box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc; } }
@keyframes loader {
  0% {
    background: #ddd; }
  33% {
    background: #ccc;
    box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd; }
  66% {
    background: #ccc;
    box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc; } }
@media screen and (max-width: 830px) {
  .gallery .og-expander h3 {
    font-size: 32px; }
  .gallery .og-expander p {
    font-size: 13px; }
  .gallery .og-expander a {
    font-size: 12px; } }
@media screen and (max-width: 650px) {
  .gallery .og-fullimg {
    display: none; }
  .gallery .og-details {
    float: none;
    width: 100%; } }

.footer {
  background-color: #333333;
  color: #FDFDFD;
  padding: 32px 0; }
  @media only screen and (max-width: 767px) {
    .footer {
      text-align: center; } }
  .footer .copyright {
    color: rgba(255, 255, 255, 0.9);
    margin: 0;
    font-size:10px;
    line-height: 130%;
    display: inline-block; }
    @media only screen and (max-width: 767px) {
      .footer .copyright {
        margin-bottom: 15px; } }
  .footer .footer-menu {
    color: rgba(255, 255, 255, 0.9); }
    .footer .footer-menu a {
      color: inherit; }
  .footer .footer-social-block {
        font-size: 18px;
    margin: 0;
    list-style-type: none;
    padding: 0;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .footer .footer-social-block {
        margin-bottom: 15px; } }
    .footer .footer-social-block li {
      display: inline-block; }
      .footer .footer-social-block li a {
        display: block;
        color: #e3e1e1;
        -webkit-transition: color 0.3s;
        transition: color 0.3s; }
        @media only screen and (max-width: 992px) {
          .footer .footer-social-block li a {
            padding: 0 8px; } }
        .footer .footer-social-block li a:hover {
          color: rgba(255, 255, 255, 0.5); }

@media (min-width: 992px) {
  .footer .footer-menu li:last-child {
    padding-right: 0; }
  .footer .footer-social-block li a {
    border-left: 1px solid #999999;
    padding: 5px 15px; }
  .footer .footer-social-block li:last-child a {
    border-right: 1px solid #999999; } }
.footer-widgets {
  background: #efefef;
  color: #222222; }
  .footer-widgets h4 {
    color: #FFFFFF;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #666666; }
  .footer-widgets .content-wrap.widget-contact {
    padding-left: 25px; }
    .footer-widgets .content-wrap.widget-contact ul {
      padding: 0;
      list-style: none;
      margin: 0; }
      .footer-widgets .content-wrap.widget-contact ul li {
        margin-bottom: 25px; }
        .footer-widgets .content-wrap.widget-contact ul li i {
          margin-right: 6px; }
  .footer-widgets .content-wrap.widget-recent-posts {
    padding-left: 25px; }
    .footer-widgets .content-wrap.widget-recent-posts ul {
      padding: 0;
      list-style: none;
      margin: 0; }
      .footer-widgets .content-wrap.widget-recent-posts ul li {
        margin-bottom: 20px; }
        .footer-widgets .content-wrap.widget-recent-posts ul li .post-title {
          display: block;
          color: #ffffff; }
        .footer-widgets .content-wrap.widget-recent-posts ul li .author {
          color: inherit; }
  .footer-widgets .content-wrap.widget-gallery {
    padding-left: 25px; }
    .footer-widgets .content-wrap.widget-gallery a {
      display: block;
      width: 40%;
      margin-right: 5%;
      margin-bottom: 5%;
      height: 1px;
      padding-bottom: 20%;
      float: left;
      background-color: black;
      background-size: cover;
      -webkit-transition: opacity 0.2s;
      transition: opacity 0.2s; }
      .footer-widgets .content-wrap.widget-gallery a:hover {
        opacity: 0.75; }
  @media only screen and (max-width: 991px) {
    .footer-widgets .content-wrap {
      margin-bottom: 80px; } }
  @media only screen and (max-width: 767px) {
    .footer-widgets .content-wrap {
      padding-left: 25px; } }

.four-o-four {
  display: table;
  height: 100vh;
  width: 100%;
  background-image: url(../images/404.jpg);
  background-size: contain;
  background-position: 20% center;
  background-repeat: no-repeat; }
  @media (max-width: 991px) {
    .four-o-four {
      background-position-x: 0; } }
  @media (max-width: 767px) {
    .four-o-four {
      background-image: none;
      text-align: center; } }
  .four-o-four .four-o-four-inner {
    display: table-cell;
    vertical-align: middle; }
    .four-o-four .four-o-four-inner h1 {
      font-weight: bold; }





iframe{
            width: 100%;
            height: 480px;
        }
        .map_wrapper{
            margin:0px 0;
        }
        
        
        
        
        
        
        
        
        
        
        
.insta_btn {
  display: inline-block;
  text-align: center;/*中央揃え*/
  color: #2e6ca5;/*文字色*/
  font-size: 20px;/*文字サイズ*/
  text-decoration: none;/*下線消す*/
}

.insta_btn:hover {/*ホバー時*/
  color:#668ad8;/*文字色*/
  transition: .5s;/*ゆっくり変化*/
}

.insta_btn .insta{/*アイコンの背景*/
  position: relative;/*相対配置*/
  display: inline-block;
  width: 50px;/*幅*/
  height: 50px;/*高さ*/
  vertical-align: middle;/*垂直中央に*/
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*グラデーション@*/
  overflow: hidden;/*はみ出た部分を隠す*/
  border-radius: 13px;/*角丸に*/

}

.insta_btn .insta:before{/*グラデーションを重ねるため*/
  content: '';
  position: absolute;/*絶対配置*/
  top: 23px;/*ずらす*/
  left: -18px;/*ずらす*/
  width: 60px;/*グラデーションカバーの幅*/
  height: 60px;/*グラデーションカバーの高さ*/
  background: -webkit-radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
  background: radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);/*グラデーションA*/
}

.insta_btn .fa-instagram {/*アイコン*/
  color: #FFF;/*白に*/
  position: relative;/*z-indexを使うため*/
  z-index: 2;/*グラデーションより前に*/
  font-size: 35px;/*アイコンサイズ*/
  line-height: 50px;/*高さと合わせる*/
}