.heebo {
	font-family: 'Heebo', sans-serif; font-weight: 100;
}

.text-white {
	color: #FFF ;
}

.text16 {
	font-size: 1.3em ;
}

/*button*/
.o-button-list {
  margin: 0;
  padding-top: 80px ;
  text-align: center;
  padding-bottom: 30px ;
}

.o-button-list a {
  display: inline-block;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  color: #FFF;
  font-size: 24px;
  /*padding: 20px 60px;*/
  border: 1px solid #004990;
  background: #004990 ;
  min-width: 32px;
  text-align: center;
  font-family: 'Heebo', sans-serif; 
	font-weight: 100;
	
}
.o-button-list a:hover,
.o-button-list a.active {
  border: 1px solid #ddd;
  background: #FFF;
  color: #434343;
	
}

.btn-map a {
  padding: 0px 5px;
  font-size: 12px;
  border-radius: 3px;
  border: 1px solid #535353 ;
}

.btn-map a:hover {
	background: rgba(255, 255, 255, 0.2) ;
}

.last-update {
	margin-top: 15px ;
}

.last-update p {
	font-family: 'Heebo', sans-serif; font-weight: 100;
	text-align: right ;
	padding-right: 15px ;
	margin-top: 10px ;
}

/* Tricky Button */
button:hover{
	cursor: pointer
}

button {
	/*background: transparent;*/
	outline: none;
	position: relative;
	border: 1px solid #004990;
	color: #fff ;
	background: #004990 ;
	overflow: hidden;
	font-family: 'Heebo', sans-serif; 
	font-weight: bold;
	font-size: 30px;
  padding: 30px 100px;
	box-shadow: 0px 8px 16px -2px rgba(10,10,10,0.1), 0px 0px 0px 1px rgba(10,10,10,0.02), 4px 4px 9px -2px rgba(0,0,0,0.3);
 }

/*button:before (attr data-hover)*/
button:hover:before{
	opacity: 1; 
	transform: translate(0,0);
}

button:before{
	content: attr(data-hover);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
	transform: translate(-100%,0);
	transition: all .3s ease-in-out;
	background: #FFF ;
	color: #004990 ;
	padding: 30px 100px;
	font-weight: 400;
	font-style: italic ;
	}

/*button div (button text before hover)*/
button:hover div{
	opacity: 0;
	transform: translate(100%,0) ;
	
}
button div{
	font-weight: 100;
	font-size: 24px;
	
	transition: all .3s ease-in-out;
	}



/* ========================================================================
  Our Skills
 ========================================================================== */
.skillbar {
	position:relative;
	display:block;
	margin-bottom:40px;
	width:100%;
	background:#eee;
	height:24px;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	-webkit-transition:0.4s linear;
	-moz-transition:0.4s linear;
	-ms-transition:0.4s linear;
	-o-transition:0.4s linear;
	transition:0.4s linear;
	-webkit-transition-property:width, background-color;
	-moz-transition-property:width, background-color;
	-ms-transition-property:width, background-color;
	-o-transition-property:width, background-color;
	transition-property:width, background-color;
}

.skillbar-title {
	position:absolute;
	top:0;
	left:0;
	width:80px;
	font-weight:bold;
	font-size:10px;
	color:#ffffff;
	background:#6adcfa;
	-webkit-border-top-left-radius:3px;
	-webkit-border-bottom-left-radius:4px;
	-moz-border-radius-topleft:3px;
	-moz-border-radius-bottomleft:3px;
	border-top-left-radius:3px;
	border-bottom-left-radius:3px;
}

.skillbar-title span {
	display:block;
	background:rgba(0, 0, 0, 0.1);
	text-align:center;
	height:24px;
	line-height:24px;
	-webkit-border-top-left-radius:3px;
	-webkit-border-bottom-left-radius:3px;
	-moz-border-radius-topleft:3px;
	-moz-border-radius-bottomleft:3px;
	border-top-left-radius:3px;
	border-bottom-left-radius:3px;
}

.skillbar-bar {
	height:24px;
	margin-left:0px ;
	width:0px;
	background:#6adcfa;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
}

.skill-bar-percent {
	position:absolute;
	right:10px;
	top:0;
	font-size:11px;
	height:35px;
	line-height:24px;
	color:#ffffff;
	color:rgba(0, 0, 0, 0.4);
}

/* ========================================================================
  features
 ========================================================================== */
#features {
  text-align: center;
  background: url("../images/footerBg.webp") fixed;
  background-position: 0 0;
  background-size: cover;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-position: center;
  padding: 400px 0 ;
}

#features i {
  font-size: 60px;
  color: #FFF ;
}

#features h3 {
  margin-top: 15px;
  font-size: 45px;
  margin-bottom: 7px;
  color: #fff;
  font-family: 'Heebo', sans-serif; font-weight: 100;

}

#features p {
	color : #FFF ;
	font-family: 'Heebo', sans-serif; font-weight: 100;
	font-size: 1.6rem ;
}

#features .slider-overlay {
  opacity: 0.8;
}


/* ========================================================================
  Mouse Ovr Effects
 ========================================================================== */
.photo-box {
  padding: 0 ;
}
 
.photo-box .circumscribed-photo-box-hidden {
  width: 100%;
  position: relative;
  overflow: hidden;
}
 
.photo-box .circumscribed-photo-box {
  width: 100%;
  height: 0;
  padding-top: 66.6%; /* 画像の高さ調整 */
	transition: all 0.3s ease-in-out;
}

.photo-box:hover .circumscribed-photo-box {
	transform: scale(1.1);
	
}

.photo-box .circumscribed-photo-box.box1 {
	background: url("http://delasol.jp/portfolio/wp-content/uploads/2025/08/FireShot-Capture-006.webp") no-repeat center center; 
	background-size: cover;
}

.photo-box .circumscribed-photo-box.box2 {
	background: url("http://delasol.jp/portfolio/wp-content/uploads/2025/08/apaie2025-1.webp") no-repeat center center; 
	background-size: cover;
}

.photo-box .circumscribed-photo-box.box3 {
	background: url("http://delasol.jp/portfolio/wp-content/uploads/2025/08/jasso25.webp") no-repeat center center; 
	background-size: cover;
}

.photo-box .circumscribed-photo-box.box4 {
	background: url("http://delasol.jp/portfolio/wp-content/uploads/2025/08/sgi0.webp") no-repeat center center; 
	background-size: cover;
}

.photo-box .circumscribed-photo-box.box5 {
	background: url("http://delasol.jp/portfolio/wp-content/uploads/2025/08/eva1.webp") no-repeat center center; 
	background-size: cover;
}

.photo-box .circumscribed-photo-box.box6 {
	background: url("http://delasol.jp/portfolio/wp-content/uploads/2025/08/essence.webp") no-repeat center center; 
	background-size: cover;
}




 
.photo-box .mask {
  position: absolute;
  width: 100%;
  height: 0;
  padding-top: 66.6%; /* 画像の高さ調整をした場合は、こちらも同じ値に変更 */
  top: 0;
  left: 0;
  background: rgba(0, 73, 144, 0.85);
}
 
.photo-box .mask-text {
	/*position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 0.8em;
  color: #fff;
  text-align: center;*/
  position: absolute;
  width: 100%;
  top: -100%;
  left: 0;
  font-size: 1.5rem;
  color: #fff;
  text-align: center;
  transition: all 0.5s ease;
}

.photo-box .viewmore {
  position: absolute;
  width: 100%;
  top: 100%;
  left: 0;
  font-size: 1.5rem;
  color: #fff;
  text-align: center;
  transition: all 0.5s ease;
	font-family: 'Heebo', sans-serif; font-weight: 100;
}


  
 
.photo-box .mouse-over-mask {
	width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transform: scale(0);
  transition: all 0.5s ease;
  /*width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: all 0.5s ease;*/
}
 
.photo-box:hover .mouse-over-mask {
  opacity: 1;
	transform: scale(1);
}
 
.photo-box:hover .mask-text {
  top: 45%;
	padding-right: 30px ;
	padding-left: 30px ;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.photo-box:hover .viewmore {
  top: 60%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%)
}


/* ========================================================================
  Animation Delay
 ========================================================================== */

.delay05 {
	-webkit-animation-delay: 0.5s; /* Chrome, Safari, Opera */
    animation-delay: 0.5s;
}

.delay10 {
	-webkit-animation-delay: 1s; /* Chrome, Safari, Opera */
    animation-delay: 1s;
}

.delay15 {
	-webkit-animation-delay: 1.5s; /* Chrome, Safari, Opera */
    animation-delay: 1.5s;
}


.gmap iframe {
	margin-bottom: -3px ;
}

/* ------------------------------
	Map
------------------------------ */
.map-wrapper{
  /*display: inline-block;*/
  background: #000;
}

.map-wrapper iframe{
  filter: grayscale(1);
  opacity: 0.8;
  vertical-align: bottom;
  transition: all 0.3s;
}

.map-wrapper iframe:hover{
  filter: grayscale(1);
  opacity: 1;
}


/* ------------------------------
	PageTop
------------------------------ */
#fixedTop {
    right: 15px;
    bottom: -60px;
    width: 30px;
    height: 30px;
    line-height: 25px;
    color: #fff;
    font-size: 15px;
    text-align: center;
    background: #004990;
	border:1px solid rgba(255,255,255,0.5) ;
    position: fixed;
    z-index: 9999;
    border-radius: 3px;
    -webkit-transform: translateZ(0);
}
#fixedTop:hover {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	/* [disabled]opacity: 0.8; */
	background: #f8b500;
	text-decoration: none ;
}


#hover {
  color: rgba(188, 175, 204, 0.9);
}

h2#testimonials {
  color: #fffae3;
}

div#all {
  width: 100%;
  height: 100%;
}

/* ------------------------------
	Works
------------------------------ */

.post-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    /*max-width: 1200px;*/
    margin: 0 auto;
  }

/*.post-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    gap: 1px;
    margin: 0 auto;
  }*/

@media only screen and (min-width: 768px) and (max-width: 979px) {
	.post-list {
    grid-template-columns: repeat(3, 1fr);
	}
}


@media only screen  and (max-width: 767px) {
	.post-list {
    grid-template-columns: repeat(2, 1fr);
	}
}

  .post-card {
    background: #fff;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    display: flex;
    flex-direction: column;
  }

  /*.post-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.12);
  }*/

  .post-card img {
    width: 100%;
    height: auto;
    object-fit: cover;
		transition: all 0.5s ease;
		opacity: 0.7 ;
  }
.post-card img:hover {
	opacity: 1;
	transform: scale(1.05);
	transition: all 0.5s ease;
}

  .post-card-content {
    padding: 16px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }

  .post-card h2 {
    font-size: 1.8rem;
    margin: 0 0 12px;
    flex-grow: 0;
  }

  .post-card h2 a {
    text-decoration: none;
    color: #333;
  }

  .post-card h2 a:hover {
    color: #004990; /* WordPressっぽい青 */
  }

  .post-card p {
    font-size: 0.9em;
    color: #555;
    margin: 0 0 12px;
    flex-grow: 1;
  }

  .read-more {
    margin-top: auto;
    text-align: right;
  }

  .read-more a {
    font-size: 0.9em;
    text-decoration: none;
    color: #FFF;
    display: inline-block;
		background: #004990 ;
		padding: 3px 5px ;
		border: 1px solid #004990 ;
		border-radius: 3px ;
		transition: all 0.3s ease;
  }

  .read-more a:hover {
    text-decoration: none;
		color: #004990;
    display: inline-block;
		background: #FFF ;
		padding: 3px 5px ;
		border: 1px solid #004990 ;
		transition: all 0.3s ease;
  }
