/*
 Theme Name:   OnePress Child
 Theme URI:    https://www.famethemes.com
 Description:  OnePress sample child theme
 Author:       FameThemes
 Author URI:   https://www.famethemes.com
 Template:     onepress
 Version:      1.0.0
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  onepress-child
*/

/* Add your custom css below
-------------------------------------------------------------- */
body {
		color: #222222;
}
h1, h2, h3, h4, h5, h6 {
		font-family: "Open Sans", Helvetica, Arial, sans-serif;
		font-weight: normal;
		color: #222222;
}
.section-title-area .section-title {
		font-weight: normal;
}
.onepress-menu a {
		font-size: 16px;
}
.img-sp {
		display: none;
}
.br-sp {
		display: none;
}
@media screen and (max-width: 767px) {
	.br-sp {
		display: block;
	}
}
.btn {
		font-size: 15px;
		font-weight: normal;
		padding: .8rem 1rem;
}
@media screen and (max-width: 767px) {
	.img-pc {
		display: none;
	}
	.img-sp {
		display: block;
	}


	.section-title-area .section-title {
    font-size: 22px;
	}
}


.opening-overlay {
  position: fixed;
  inset: 0;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  z-index: 9999;
  transition: opacity 1s ease;
}

.opening-img {
  opacity: 0;
  max-width: 80%;
  margin-bottom: 1rem;
}

.fade-in {
  animation: fadeIn 2s forwards;
}

.fade-in-delay {
  animation: fadeIn 2s forwards 2.5s;
}

@keyframes fadeIn {
  to { opacity: 1; }
}


		.mainVisual {
			position: relative;
			width: 100%;
			overflow: hidden;
		}
		.text-images {
		  position: absolute;
		  bottom: 202px;  /* 左下に余白 */
		  left: 255px;
		  display: flex;
		  flex-direction: column;
		  gap: 24px; /* 上下の間隔 */
			width: 40%;
		}

		.fade-text {
  		opacity: 0;
  		transform: translateY(10px); /* 少し下から上がってくる感じ */
  		animation: fadeInUp 1s ease forwards;
		}

		.fade1 {
  		animation-delay: 0.5s;
		}

		.fade2 {
  		animation-delay: 1.5s;
		}

		@keyframes fadeInUp {
  		from {
    		opacity: 0;
    		transform: translateY(10px);
  		}
  		to {
    		opacity: 1;
    		transform: translateY(0);
  		}
		}


/* 理念・制作　policy */
#policy .section-desc {
		padding: 0 11%;
}
#policy .section-desc p {
		color: #222222;
		font-size: 20px;
		letter-spacing: 0.05em;
		text-align: left;
}
#policy .section-desc .pr-txt_1 {
		color: #0087c2;
		font-size: 40px;
		font-weight: 600;
		letter-spacing: 0.05em;
		text-align: center;
}

#policy .section-desc .pr-txt_1 span {
		color: #222222;
		font-size: 32px;
		font-weight: 400;
}
#policy .section-desc .pr-txt_1 span:nth-of-type(2) {
		font-size: 36px;
}
#policy .service-content ul {
		margin-top: 1.5rem;
}
#policy .service-title {
		display: none;
}
#policy .cm_service-title {
		font-size: 56px;
}
#policy .cm_service-title.policy1 {
		color: #dd767f;
}
#policy .cm_service-title.policy2 {
		color: #ccad15;
}
#policy .cm_service-title.policy3 {
		color: #4667a1;
}
#policy .cm_service-title span {
		color: #222222;
		font-size: 36px;
		padding-left: 26px;
}
#policy .service-content .wp-block-list {
		font-size: 18px;
}
@media screen and (max-width: 767px) {
	#policy .section-desc p {
		font-size: 16px;
	}
	.section-services .service-item .service-image img {
    max-width: 60px;
    height: auto;
	}
	#policy .cm_service-title {
    font-size: 40px;
	}
	#policy .cm_service-title span {
		font-size: 26px;
		padding-left: 0;
	}
}


/* 活動報告 activity */
.blog,
.section-news {
		line-height: 1.2;
}
.blog a,
.section-news a {
		color: #222222;
}
.blog .list-item,
.section-news .list-item {
		margin-bottom: 25px;
		padding-bottom: 25px;
}
.blog .list-article-thumb,
.section-news .list-article-thumb {
		float: none;
    margin-right: inherit;
		margin-bottom: 15px;
}
.blog .list-article-date,
.section-news .list-article-date {
		font-size: 16px;
		margin-bottom: 8px;
}
.blog .entry-title,
.section-news .entry-title {
    font-size: 17px;
		line-height: 1.2;
		margin-bottom: 20px;
}
.entry-excerpt {
    font-size: 14px;
}
@media screen and (max-width: 767px) {
	.blog .list-item,
	.section-news .list-item {
		border-bottom: 1px solid #CCCCCC;
	}
  .blog .list-article-thumb,
  .section-news .list-article-thumb {
		margin-bottom: 15px;
  }
	.entry-excerpt {
    font-size: 15px;
	}
}
@media screen and (max-width: 991px) {
  .section-news .list-article-thumb, .blog .list-article-thumb {
    display: block;
  }
}


/* プロフィール　profile */
#profile h3 {
		display: none;
}
#profile .wp-block-media-text > .wp-block-media-text__content {
		align-self: start;
		padding: 0;
}
#profile .pr-txt_2 {
		color: #da5271;
		font-size: 28px;
		font-weight: 400;
		letter-spacing: 0.2em;
}
#profile .pr-txt_2 span {
		color: #0087c2;
		font-size: 40px;
		font-weight: 600;
		letter-spacing: 0.2em;
}
#profile .profile-list {
		position: relative;
}
#profile .profile-list::before {
	 	-webkit-transform-origin: 0 0;
  	position: absolute;
	  top: 9px;
	  left: 9px;
	  width: 2px;
	  height: 100%;
	  transform-origin: 0 0;
	  background: rgb(200, 200, 200);
	  background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 135, 194)), color-stop(92%, rgb(0, 135, 194)), to(rgba(, 135, 194, 0)));
	  background: linear-gradient(to bottom, rgb(0, 135, 194) 0%, rgb(0, 135, 194) 92%, rgba(0, 135, 194, 0) 100%);
	  content: "";
}
#profile .profile-list dt {
	  color: rgba(0, 135, 194, 0.7);
	  font-weight: 500;
	  font-size: 24px;
	  position: relative;
  	padding-left: 3rem;
}
#profile .profile-list dt::before {
	  position: absolute;
	  top: 9px;
	  left: 0;
	  width: 20px;
	  height: 20px;
	  border: 2px solid #fff;
	  border-radius: 50%;
	  background: none repeat scroll 0% 0% #0087c2;
	  content: "";
}
#profile .profile-list dd {
		color: #222222;
		font-size: 20px;
		font-weight: 500;
	  margin-bottom: 1rem;
  	padding-left: 3rem;
}
#profile .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
		align-self: start;
		text-align: center;
}

#profile .wp-block-media-text__media img {
		width: 80%;
}

@media screen and (max-width: 991px) {
	#profile .profile-list dt {
	  font-size: 22px;
	}
	#profile .profile-list dd {
	  font-size: 18px;
  }
	#profile .wp-block-media-text__media img {
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	#profile .profile-list dt {
	  font-size: 20px;
	}
	#profile .profile-list dd {
	  font-size: 16px;
  }
	#profile .wp-block-media-text__media img {
		width: 50%;
	}
}


/* お問い合わせ contact */
#contact h3 {
		font-size: 20px;
}
.address-box {
		padding-left: 20px;
		text-align: center;
}
.section-contact .address-contact .address-content {
    font-style: normal;
		font-size: 20px;
		padding-left: 0;
}
@media screen and (max-width: 767px) {
	#contact h3 {
		font-size: 18px;
	}
	.section-contact .address-contact .address-content {
		font-size: 18px;
	}
	.address-box {
		margin-top: 30px;
		padding-left: 0;
	}
}
