@charset "utf-8";

/* --------------------------------------PHOTO*/ 
ul .col-item {text-align:center;}
.col-item img{width:94%;}
.col{
  display: flex;
  flex-flow: wrap;
  width: 100%;
  justify-content: space-between;
 }
.row-2 .col-item{width: 50%;}
.row-2r .col-item{width: 50%; margin-left:25%;}  
.row-3 .col-item{width: 33.3%;}
.row-3r .col-item{width: 33.3%;}
.row-3r .col-item img{width: 94%;}
.row-3r li:nth-child(3n+2):last-child {
  margin-left: auto;
  margin-right: 33.3%;
 }
  
.row-4 .col-item{width: 25%;} 
.row-4r .col-item{width: 25%;}
.row-4r .col-item img{width: 94%;}  
.col-item{padding: 15px 0;}
.col-item span{
   font-size: 14px;
 }
@media screen and (max-width: 767px) {
.col-item span{
   font-size: 12px;
 }
.row-4r .col-item{width: 50%; line-height:1.0;}
}



/*******************************
*	OTHER
*******************************/ 
.cmpFtLinkList .fa {padding-left:8px;} 
.cmpBtnList .fa {padding-right:4px;}
.cmpNone .item1-border {display:none;}
.cmpTittle {text-align:center;}

.cmpMgnLR {
  width: 960px;
 } 
.cmpMgnL {
  margin-right:30px;
 }
.cmpMgnL2 { 
  margin:0 0 0 50px;
 }
.cmpMgnR {
  margin-left:30px;
 }
.bgclear .contact{ 
  font-size:16px;
  color:#483D8B;
 } 
.indenttext {
  padding-left: 1em;
  text-indent: -1em;
}
.rightjustified{
  text-align: right; 
  font-size: 14px;
}
.smalltext {
  font-size:12px;
  line-height:1.2;
}
.item-center {text-align:center;}

.bgblue h3 {font-weight: 700;}    
.bgblue h4 {margin-bottom:30px;}     

  
@media screen and (min-width: 1200px) {
.cmpMgnLR {  
  width:1100px;
  margin: 0px auto;  
 }
.news_table span{ margin:0 7% 0 5%;}
}
@media screen and (max-width: 767px) {
.cmpMgnLR {
  width:auto;
  margin: 0px 10px;  
 }
.cmpMgnLR h2 {font-size:18px;} 
.cmpMgnLR h3 {font-size:16px;}
.cmpMgnLR h4 {font-size:14px;}
.cmpMgnL,
.cmpMgnL2,
.cmpMgnR  {margin: 10px 0 0; width:100%;}
.cmpjpAreaBG-GRAY{
  padding:20px 0;
 }
.bgclear .contact{ font-size:14px;}
.rightjustified{font-size: 10px;}
.bggray h4,
.bgblue h4 {margin-bottom:20px;} 
.cmpTittle {text-align:left;}
}

/* HOVER REVEAL */
.hvr-reveal {
  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;
}
.hvr-reveal:before {
  content: "";
  position: absolute;
  z-index:0;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  border-color: #2098D1;
  border-style: solid;
  border-width: 0;
  -webkit-transition-property: border-width;
  transition-property: border-width;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-reveal:hover:before, .hvr-reveal:focus:before, .hvr-reveal:active:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  border-width: 4px;
}


.hb50 {margin-bottom:50px;}
.cmpMgnLR h1{
  padding-bottom:100px;
  text-align:center;
}
.overlay_imgbg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  opacity: 0.3;
} 
#anchor1 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor2 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor3 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor4 {
  margin-top : -80px;
  padding-top : 80px;
}
#anchor5 {
  margin-top : -80px;
  padding-top : 80px;
}
.arrow_white {
  position: absolute;
  top: 40%;
  right: 20px;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  display: block;
  width: 15px;
  height: 15px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.arrow_gray:after {
  position: absolute;
  content: '';
  width: 6px;
  height: 6px;
  border-top: solid 2px #697b91;
  border-right: solid 2px #697b91;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 15px;
  margin-top: -3px;
}
.arrow_blue {  
  position: absolute;
  bottom: 10px; 
  right:0;
  font-size: 16px;
 }
.arrow_blue:after {
  content:  "\f105";
  font-family: FontAwesome;
  padding: 0 10px 0 6px;
  font-weight: normal;
  color: #0058ff;
  text-decoration: none;   
  font-size: 20px;
}
.parent{
  width: 90%;
  height: 80px;
  margin:0 auto;
  position: relative;
  text-align:center;
}
.inner{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  border: 1px solid #ccc;
  margin: auto;
}

.down-arrow{
  margin: 0 auto;
  width: 0;
  height: 0;                                 
  border-style: solid;
  border-width: 50px 50px 0 50px;
  border-color: #F9F9F9 transparent transparent transparent;
 }
.down-arrow2{
  margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 50px 0 50px;
  border-color: #CCE1FF transparent transparent transparent;
}
p.radius {
  border: 2px solid gray;
  border-radius: 8px;
  margin: 0 5px 8px 5px;
  width: 94%;
  padding:5px;
  display: inline-block;
  font-size: 16px;
}
p.radius2 {  
  background-color:#F5F5F5; 
  border-radius: 6px;
  margin: 0 8px 8px 0;
  width: 90%;
  padding:5px;
  display: inline-block;
  font-size: 16px;
}
.cmpphotwidth img{width: 100%;}
.scroll-announceR { margin-top:20%;}
.snsicon {
  display: block;
  text-align: right; 
  width: 98%;
 }
.scroll-announce {
  text-align: center;
  color:#fff;
  position: relative;
 }
.scroll-announce:after {
  font-size: 40px;
  font-weight: bold;
  display: block;
  text-align: center;
  content: "\f107";
  font-family: FontAwesome;
  position: absolute;
  left: 50%;
  left: calc( 50% - 24px );
  bottom: -60px;
  width: 48px;
  animation: scroll-announce 3s ease infinite;
 }
.cmpglIso14,
.cmpglIso99 {
  margin-left: 12px;
  padding:2px 4px;
  font-size: 12px;
  line-height: 1.2;
  vertical-align:0.2em;
  white-space: nowrap;
 }
.cmpglIso14 { border: 2px solid #88C99C; }
.cmpglIso99 { border: 2px solid #7DCDF4; }

.bgblue,
.bggray,
.bgdarkgray, 
.bgwhite {padding :80px 0;} 
.bgwhiteR {padding :80px 0 0;}
.bgwhiteR {
	box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-moz-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-webkit-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-o-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
	-ms-box-shadow: 0px 5px 12px -8px rgba(0,0,0,0.2) inset;
}   
.bgclear {padding-top :50px;}    
.bgblue h2,
.bggray h2, 
.bgwhite h2 {font-weight: 700;}      

@media screen and (max-width: 767px) {  
.cmpMgnLR h1{
  padding-bottom:40px;
}
.parent{
  width: 70%;
  height: 40px;
}
.snsicon img{ width: 10%;}
.snsicon { 
  text-align: left;
  padding:10px 0;
 } 
.scroll-announce:after {
  font-size: 30px;
  bottom: -40px;
 }
.cmpglIso14,
.cmpglIso99 {
  margin:4px 0 0 5px;
  padding: 0px 4px;
  font-size: 10px;
  white-space: nowrap;
 }
.cmpglIso14 { border: 1px solid #88C99C; }
.cmpglIso99 { border: 1px solid #7DCDF4; }
.underline {
  border-bottom: solid 3px #87CEFA;
 }
.bgblue,
.bggray,
.bgwhite {padding : 40px 0;} 
.bgwhiteR {padding : 40px 0 5px;}
.bgclear {padding : 10px 0 15px 0;}    
}

/* ---------------------------------------------------背景付ボタン */
.flexboxR {
  position: relative;
  padding: 20px;
  overflow: hidden;
  list-style: none;
  background: #fbfbfb;
 }
.flexboxR .flex_box{
  width:30%;
  text-align:center;
  margin: 20px;
 }
.textframe{
    padding: 0.5em 1em;
    color: #2c2c2f;
    background: #fff/*背景色*/
}
.textframe  p {
    margin: 0; 
    padding: 0;
}
.flexboxR a{
  position: absolute;
  width: 100%;
  height: 100%;
  top:0;
  left: 0;
  text-decoration: none;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
 }
.flexboxR a:hover{
  opacity:0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )";
  background: #fff;
 }
@media print, screen and (max-width: 767px){
.flexboxR .flex_box{
  width:90%;
 }
}


/* ---------------------------------------------------お問い合わせ */
.header_inquiry{
    width:130px;
    font-weight:500;
    text-decoration:none;
    display:block;
    text-align:center;
    margin-left:16px;
    padding:0px 1px 1px;
    color:#fff;
    background-color:#004EA2;
    border-radius:3px;
}

.ok{
    width: 100%;   /* お問い合わせボタン */
    margin:0 auto;
    padding: 20px;
    font-size: 16px;
    text-align:center;
    display: block;
    color: #151515;
    border: 2px solid #777777;
    background: transparent;
}
.ok:hover,
.ok:focus{
    width: 100%;
    margin:0 auto;
    display: block;
    color: #fff;
    border-color: transparent;
    background: #000;
}

@media screen and (max-width: 480px) {
.arrange_inquiry{ 
    line-height: 1.2;
 }
}

/*******************************
*    	SCROLLBAR
*******************************/
div::-webkit-scrollbar{
  width: 10px;
 }
div::-webkit-scrollbar-track{
  background: #fff;
  border: none;
  border-radius: 5px;
  box-shadow: inset 0 0 2px #a0a0a0; 
 }
div::-webkit-scrollbar-thumb{
  background: #ddd;
  border-radius: 10px;
  box-shadow: none;
 }



/*******************************
*  Lity
*******************************/
/*! Lity - v1.6.6 - 2016-04-22
* http://sorgalla.com/lity/
* Copyright (c) 2016 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 11000;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
       -o-transition: opacity 0.3s ease;
          transition: opacity 0.3s ease;
}
.lity.lity-opened {
  opacity: 1;
}
.lity.lity-closed {
  opacity: 0;
}
.lity * {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
}
.lity-wrap:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}
.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
       -o-transition: opacity 0.3s ease;
          transition: opacity 0.3s ease;
}
.lity-loading .lity-loader {
  opacity: 1;
}
.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}
.lity-content {
  z-index: 9993;
  width: 100%;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
       -o-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease;
       -o-transition: -o-transform 0.3s ease;
          transition: transform 0.3s ease;
}
.lity-loading .lity-content,
.lity-closed .lity-content {
  -webkit-transform: scale(0.8);
      -ms-transform: scale(0.8);
       -o-transform: scale(0.8);
          transform: scale(0.8);
}
.lity-content:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
.lity-close {
  z-index: 9994;
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  top: 0px;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 50px;
  line-height: 50px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.lity-close::-moz-focus-inner {
  top: 0px;
  border: 0;
  padding: 0;
}
.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  top: 0px;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 50px;
  line-height: 50px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.lity-close:active {
  top: 0px;
}
/* Image */
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 35px;
  border: 0;
}
/* iFrame */
.lity-iframe .lity-container {
  width: 100%;
  max-width: 720px;
}
.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}
.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}
.lity-hide {
  display: none;
}
