@charset "utf-8";
@import url("../../assets/css/secondary.css");
@import url("../../assets/plugin/swiper/css/swiper-bundle.min.css");
@import url("../../assets/css/slider.css");
@import url("../../assets/css/ttl.css");
@import url("../../assets/css/sub_ttl.css");
@import url("../../assets/css/flex_cont.css");
@import url("../../assets/css/move.css");
@import url("../../assets/css/line.css");

/*上書き*/
.about_menu{
/*	background-color: var(--main-color3);   */
	background-color: white;
}
#first_sec{
	background-image: url("../images/page_ttl.jpg")
}
.breadcrumblist{
	color: #fff;
	z-index: 3
}
.breadcrumblist li a::after{
	border-color: #fff
}

#about{
	background: linear-gradient(rgba(165,210,249,1),rgba(243,243,230,0));
	overflow: hidden;
	position: relative;
}
#about::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../images/about_bg_img.svg");
  background-position: top 12em right;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
.history_box{
	width: 100%;
  	max-width: 230px;
	margin: 1.5em auto 3em auto;
	padding: 1.5em 0 2em;
	position: relative;
	color: #fff;
	text-align: center;
	z-index: 3
}
.history_box::before{
	content: "";
	width: 140px;
	height: 62px;
	position: absolute;
	top: 30%;
	left: -25%;
	background: url("../images/vision_icon.svg") center / 100% no-repeat;
}
.history_box span{
	display: block;
	position: relative;
	font-family: 'ZenOldMincho';
	font-size: 1.3em;
}
.history_box span::after {
	content: "";
	width: 3.7em;
	height: 0.7em;
	position: absolute;
	bottom: -0.5em;
	left: 35%;
	background: url("../images/underline.svg") center / 100% no-repeat;
}
.history_box p{
	margin-top: 0.8em;
	font-size: 1.2em;
	line-height: 1.6em;
	font-weight: 500;
	text-shadow: 4px 4px 5px #8EB9DE;
	letter-spacing: 0.2rem;
}
.move-line::before {
	content: "";
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	height: 0.05em;
	background: #fff
}
.move-line::after {
	content: "";
	position: absolute;
	display: block;
	top: 0;
	right: 0;
	width: 0.05em;
	background: #fff
}
.move-line .box_line::before {
	content: "";
	position: absolute;
	display: block;
	bottom: 0;
	right: 0;
	height: 0.05em;
	background: #fff
}
.move-line .box_line::after {
	content: "";
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	width: 0.05em;
	background: #fff
}

/*トップ・強み　線共通*/
.line{
	bottom: 1em;
}
.line::after{
	height: 60px;
	background: #fff
}
@keyframes pathmove-sp {
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:60px;
		opacity: 1;
	}
	100%{
		height:0;
		top:50px;
		opacity: 0;
	}
}
@media screen and (min-width: 768px) {
	.line::after{
		height: 80px;
		animation: pathmove-tb 1.4s ease-in-out infinite;
	}
}
@keyframes pathmove-tb {
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:80px;
		opacity: 1;
	}
	100%{
		height:0;
		top:80px;
		opacity: 0;
	}
}
@media screen and (min-width: 1200px) {
.line::after{
	height: 70px;
	animation: pathmove-pc 1.4s ease-in-out infinite;
}
}
@keyframes pathmove-pc{
	0%{
		height:0;
		top:0;
		opacity: 0;
	}
	30%{
		height:70px;
		opacity: 1;
	}
	100%{
		height:0;
		top:70px;
		opacity: 0;
	}
}
/*flow_text*/
.bg-image-loop {
	width: 100%;
	height: 160px; 
	padding: 0;
	position: absolute;
	left: 0;
	top: 10em;
	background: url("../images/logo_yamazaki.svg") repeat-x 0 0;
	background-size: 45% auto;
	animation: bg-slider 100s linear infinite; 
	z-index: 2;
}
@keyframes bg-slider {
	from { background-position: 0 0; }
    to { background-position: -1518px 0; }
}
.about_first{
	margin-top: 2em;
	position: relative;
	text-align: center;
	z-index: 1
}
.first_ttl{
	position: relative;
	display: inline-block;
	margin: 0 auto;
	color: #0457AA;
	font-size: 1.5em;
	text-align: center;
	font-weight: 300;
}
.first_ttl::after{
	content: "";
	width: 50px;
	height: 5px;
	margin: 0.2em auto 0 auto;
	display: block;
	border-radius: 10px;
	background: linear-gradient(to right, #0F85DA, #0457AA);
}
.first_txt{
	width: 900px;
	max-width: 85%;
	margin: 1.5em auto 0 auto;
	color: #0457AA	;
	position: relative;
}
.first_txt p{
	margin-bottom: 1em;
	color: currentColor	;
	font-size: 1em;
	font-weight: 500;
	text-align: left;
	letter-spacing: 0.1em;
	position: relative;
	z-index: 2
}
.animation_item1,.animation_item2 {
	position: absolute;
	z-index: 1;
	transition-timing-function: cubic-bezier(.68, -.52, .33, 1.6);
	opacity: 0;
	transform: translateY(10px) scale(.95)
}
.animation_item1.active,.animation_item2.active {
	transform: translateY(0) scale(1);
	opacity: 1
}
.item-cloud,.item-cloud2 {
  width: 100px;
  height: 55px;
  animation-name: move-cloud;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
  animation-direction: alternate;
}
.item-cloud{
  left: 0;
  top: -8em;
}
.item-cloud2 {
	right: 0;
	top: -14em;
}
@keyframes move-cloud {
	0%{
		transform: translateY(-5px)
	}
	100%{
		transform: translateY(5px)
	}
}
.message{
	z-index: 1;
	margin-top: 4em
}
#about .ttl::before {
	width: 84px;
	height: 66px;
	top: 0;
	left: inherit;
	right: -92px;
	display: block;
	background: url("../images/message_ttl01.svg") center / 100% no-repeat
}
#about .ttl {
	padding-left: 0;
	color: var(--main-color)
}
#about .ttl h2::before {
	background-color: var(--main-color)
}
#about .ttl i {
	-webkit-text-stroke: 1px var(--main-color);
	text-stroke: 1px var(--main-color);
}
.message_box{
	margin-top: 1.5em;
	margin-bottom: 5em;
	position: relative;
	z-index: 1;
}
.message_box_img{
	margin-top: 1em;
	display: block;
	text-align: center;
}
.message_box_img img{
	width: 80%;
	height:auto;
	margin-left: -3em
}
.message_box_ttl{
	width: 93%;
	padding: 1.5em;
	margin-top: -1em;
	position:relative;
	margin-left:3%;
	background:linear-gradient(to left,#005299, #086FB9); ;
	z-index: 2;
}
.message_box_ttl h3{
	margin-bottom: 0.5em
}
.message_box_ttl h3 img{
	width: 160px;
	height: auto
}
.message_box_ttl p{
	color: #fff;
	font-size: 0.9em
}
.message_box_ttl p br{
	display: none
}
.message_underbox{
	width: 106%;
	margin-left: -3%;
	margin-top: -3em;
	padding: 4em 2em 2em 2em;
	position: relative;
	background-color: #fff;
	box-shadow: 0px 8px 8px -6px rgba(0, 0, 0, 0.3);
}
.message_txt{
	width: 100%;
	font-size: 1em;
	line-height: 1.6em;
}
.message_txt span{
	display: block;
}
.message_name{
	width: 100%;
	margin-top: 1em;
	display: block;
	text-align: right;
}
.message_name span{
	font-weight: 500;
	display: inline-block;
	font-size: 1.3em;
	text-align: left;
}
.message_name span i{
	display: block;
	font-weight: 300;
	font-style: normal;
	font-size: 0.6em
}
@media screen and (min-width:380px) {
.message_box_img img{
	width: 70%;
	height:auto;
	margin-left: -4em
}
}
.message_box.fade-up { 
	transition-delay: 1.2s;
}

@media screen and (min-width:480px) {
.history_box{
  	max-width: 250px;
}
.history_box::before{
	width: 180px;
	height: 62px;
	left: -35%;
}
.history_box p{
	font-size: 1.3em;
}
.first_ttl{
	font-size: 1.8em;
}
.first_txt p{
	margin-bottom: 1.3em;
}
.item-cloud,.item-cloud2 {
  width: 130px;
  height: 80px;
}
.item-cloud{
  left: 0;
  top: -8em;
}
.item-cloud2 {
	right: 0;
	top: -14em;
}
.message_box_ttl h3 img{
	width: 180px;
}
.message_box_ttl p{
	font-size: 1em
}
.message_underbox{
	width: 100%;
	margin-left: inherit;
}
}
@media screen and (min-width:580px) {
.message_box_img img{
	width: 300px;	
	}
}
@media screen and (min-width:630px) {

.message_box_ttl{
	padding: 2em;
}
.message_box_ttl h3 img{
	width: 200px;
}
.message_box_ttl p{
	font-size: 1.1em
}
.message_underbox{
	padding: 4.5em 3em 2em 3em;
}
}
@media screen and (min-width:768px) {
.message{
	margin-top: 8em
}
#about::before {
  background-size: 83%;
}
.history_box{
  	max-width: 300px;
	margin: 2em auto 5em auto;
	padding: 1.5em 0 2.5em;
}
.history_box::before{
	width: 250px;
	height: 100px;
}
.history_box span::after {
	left: 38%;
}
.history_box p{
	font-size: 1.5em;
}
.first_ttl{
	font-size: 2.3em;
}
.first_ttl::after{
	width: 65px;
	height: 6px;
}
.first_txt{
	margin: 2.5em auto 0 auto;
}
.first_txt p{
	font-size: 1.15em;
}
.item-cloud,.item-cloud2 {
  width: 150px;
  height: 80px;
}
.item-cloud{
  left: -1em;
  top: -8em;
}
.item-cloud2 {
	right: 0;
	top: -14em;
}
.message_box{
	margin-top: 2em;
}
.message_box_ttl{
	width: 400px;
	position: absolute;
	margin-top: -10em;
	margin-left: 1.5em;
}
.message_box_ttl p br{
	display: block
}
.message_underbox{
	margin-top: 11.5em;
}
.message_txt,.message_name{
	width: 65%;
}
.message_box_ttl h3 img{
	width: 220px;
}
.message_box_img{
	height: auto;
	margin-top: 0;
	position: absolute;
	right: 2em;
	bottom: 3em;
}
.message_box_img img{
	width: 280px;
	margin-left: inherit
}
}
@media screen and (min-width:800px) {
#about .ttl::before {
	width: 101px;
	height: 82px;
	right: -113px;
}	
}
@media screen and (min-width:900px) {
.message_box_img{
	right: 3em;
	bottom: 1em;
}
.message_box_img img{
	width: 280px;
}
}
@media screen and (min-width:1024px) {
.history_box{
  	max-width: 350px;
	padding: 2em 0 2.8em;
}
.history_box span{
	font-size: 1.5em;
}
.history_box p{
	font-size: 1.8em;
}
.message_txt{
	font-size: 1.1em;
	line-height: 2em;
}
.message_box_img{
	right: 4em;
	bottom: 2em;
}

.message_box_img img{
	width: 310px;
}
}
@media screen and (min-width:1200px) {
.history_box{
  	max-width: 400px;
	margin: 3em auto 5em auto;
	padding: 2.8em 0 3.5em;
}
.history_box span{
	font-size: 1.5em
}
.history_box span::after {
	left: 40%;
}
.history_box p{
font-size: 2em;
}
.first_ttl{
	font-size: 2.6em;
}
.first_txt p{
	margin-bottom: 1.5em;
	font-size: 1.3em;
	line-height: 2
}
.item-cloud,.item-cloud2 {
  width: 200px;
  height: 200px;
}
.item-cloud{
  left: -7em;
  top: -14em;
}
.item-cloud2 {
	right: -5em;
	top: -20em;
}
#about .ttl::before {
	width: 129px;
    height: 104px;
    top: 0.2em;
    right: -147px;
}
.message_box_ttl{
	width: 450px;
	margin-left: 2em
}
.message_box_ttl h3{
	margin-bottom: 1em
}
.message_box_ttl h3 img{
	width: inherit;
}
.message_box_ttl p{
	font-size: 1.2em
}
.message_underbox{
	padding: 6em 4em 4em 4em;
}
.message_txt{
	font-size: 1.2em;
}
.message_name{
	margin-top: 2em;
}
.message_name span{
	font-size: 1.6em;
}
}
@media screen and (min-width:1600px) {
.history_box{
  	max-width: 450px;
	margin: 4em auto;
	padding: 2.8em 0 4.5em;
}
.history_box p{
	font-size: 2.3em;
}
.first_ttl{
	font-size: 2.8em;
}
.first_ttl::after{
	width: 75px;
}
.message_box{
	margin-bottom: 12em;
}
.message_box_img{
	right: 8em;
	bottom: 2em;
}
.message_box_img img{
	width: inherit
	}
}
@media print{
	.ttl_box{
		margin-bottom: 1em
	}
	.message_box{
		width: 95%;
		margin: 0 auto
	}
.message_box_ttl{
	width: 350px;
	margin-left: 1em
}
.message_txt,.message_name{
	width: 65%;
}
.message_box_img{
	position: absolute;
	right: 3em;
	bottom: 2em;
}
.message_box_img img{
	width: 200px
	}
#about .carousel {
	padding-top: 4em
}
}
#staff{
	margin-bottom: 3em;
	position: relative
}
#staff:target::before {
  content: "";
  display: block;
  height: 5em; 
  margin-top: -5em; 
  visibility: hidden,
}
#about .carousel {
	position: relative;
	z-index: 4
}

#about .slider01{
	background: url(../../about/images/slide01.jpg) center / 100% no-repeat
}
#about .slider02{
	background: url(../../about/images/slide02.jpg) center / 100% no-repeat
}
#about .slider03 {
	background: url(../../about/images/slide03.jpg) center / 100% no-repeat
}
#about .slider04 {
	background: url(../../about/images/slide04.jpg) center / 100% no-repeat
}
#about .slider05 {
	background: url(../../about/images/slide05.jpg) center / 100% no-repeat
}
#about .slider06 {
	background: url(../../about/images/slide06.jpg) center / 100% no-repeat
}
#about .slider_box{
	margin-top: -2em;
	margin-left: -0.5em;
	position: relative;
	z-index: 5
}
.staff_first{
	padding: 0.5em 1em 1em 1em;
	display: inline-block;
	color: #fff;
	background: var(--grada-bg-blue);
}
.staff_first span{
	display: block;
	font-size: 1.2em;
	color: currentColor;
}
.staff_first p{
	font-size: 0.85em
}
#staff dl{
	margin-top: 3em;
}
#staff .ttl {
	padding-left: 80px;
	color: var(--main-color)
}
#staff h2{
	margin-right: 40px;
}
#staff .ttl h2::before {
	background-color: var(--main-color)
}
#staff .ttl i {
	-webkit-text-stroke: 1px var(--main-color);
	text-stroke: 1px var(--main-color);
}
#staff .ttl::before {
	width: 65px;
  height: 70px;
	left: 0;
	top: 0;
	display: block;
	background: url("../images/staff_ttl01.svg") center / 100% no-repeat
}
#staff dd{
	margin-top: 1em;
	font-size: 1.1em;
	line-height: 1.5
}
.member_list{
	width: 110%;
	margin-left: -5%;
	margin-top: 2em;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
.member_list::after{
	content: "";
    display: block;
    width: calc(94% / 2);
    height: 0;
}
.member_list li{
	width: calc(96% / 2);
	margin-bottom: 4em;
	position: relative;
	text-align: center
}

.member_list li img{
	width: 100%;
	height: auto
}
.member_name {
  position: absolute;
  right: 1em;
  bottom:-2.5em;
  text-align: right;
  z-index: 3;
}
.member_name span{
	display: block;
	font-size: 0.7em;
}
.member_name small{
	margin-right: .5em;
	font-size: 0.7em;
}
.member_name b{
	position: relative;
	font-family: 'Arial';
	font-size: 1.1em;
}
.member_name b::after{
	content: "";
	width: 40px;
	height: 5px;
	position: absolute;
	right: 0;
	bottom: .15em;
	border-radius: 1em;
	z-index: -1
}
.member_name>.type1 b::after{
	background: linear-gradient(to left, #0595EB, #C8E5F7);
}
.member_name>.type2 b::after{
	background: linear-gradient(to left, #57DD52, #D1FACB);
}
.member_name>.type3 b::after{
	background: linear-gradient(to left, #E44E51, #FFCDCD);
}
.name_l{
	margin-bottom: -1em;
}
.name_l span{
	line-height: 1.4
}
.modal__trigger {
  cursor: pointer;
}
.modal__close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--main-color);
	cursor: pointer;
	transition: opacity .6s;
	z-index: 2
}
.modal__close:hover {
  opacity: .6;
}
.modal__close:before,
.modal__close:after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background: #fff;
  content: '';
}
.modal__close:before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.modal__close:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.modal__wrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 301;
  width: 100%;
  height: 100%;
}
.modal__layer {
  height: 100%;
  background: rgba(50, 50, 50, .85);
  cursor: pointer;
}
.modal__container {
	width: 600px;
	max-width: calc(100% - 60px);
	height: calc(100% - 100px);
	max-height: 950px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	overflow-y: auto;
	scrollbar-color: #B7CCDB #fff;
	background: #fff;
}
.modal__inner {
  position: relative;
}
.modal__content {
}

/*.modal__content figure{
	width: 100%;
	height: 200px;
	background: url("../images/staff01.jpg") center / 120% auto no-repeat;
}
*/

.modal__content_box{
	width: 100%;
	padding: 2em
}
.modal__content_box h3{
	margin: 0 0 1.5em 0;
	text-align: center
}
.jy_img{
	width: auto;
	height: 50px;
}
.ta_img{
	width: auto;
	height: 70px
}
.kk_img{
	width: auto;
	height: 85px
}
.modal__content_box>.member_name{
	margin-bottom: 0.5em;
	position: inherit;
	text-align: left
}
.modal__content_box>.member_name span{
	display: flex;
	font-size: 1em;
	font-weight: bold
}
.modal__content_box>.member_name span::before{
	content: "";
	width: 8px;
	height: 8px;
	margin: 0.5em 0.4em 0 0;
	display: block;
	background-color: var(--main-color3);;
	border-radius: 50%
}
.modal__content_box>.member_name b {
	margin-left: 15px;
  font-size: 1.8em;
  font-weight: bold;
}
.modal__content_box>.member_name p{
	margin-bottom: inherit
}
.modal__content_box h4{
	margin-bottom: 0.3em;
	color: var(--main-color3);
	font-size: 1.1em;
	left: 0.1rem;
}
.modal__content_box p{
	margin-bottom: 1.5em;
	font-size: 0.95em
}
@media screen and (min-width:425px) {
.member_list{
	width: 100%;
	margin-left: inherit;
}
.member_name {
  right: 1.5em;
	bottom: -3em
}
.member_name span{
	font-size: 0.8em;
}
.member_name small{
	font-size: 0.8em;
}
.member_name b{
	font-size: 1.3em;
}
}
@media screen and (min-width:480px) {
.staff_first span{
	font-size: 1.4em;
}
.staff_first p{
	font-size: 1em
}
.member_list{
	margin-top: 3em;
}
.member_name span{
	font-size: 0.9em;
}
.member_name b{
	font-size: 1.6em;
}
.member_name small{
	font-size: 1em;
}
.modal__content_box{
	padding: 2em 3em 2em 3em
}
.modal__content figure{
	height: 230px;
}
.jy_img{
	height: 55px;
}
.ta_img{
	height: 75px;
}
.modal__content_box>.member_name span{
	font-size: 1.1em;
}
}

@media screen and (min-width:630px) {
.member_list li img{
	width: 90%;
}
.member_name {
  right: 2em;
}
.member_name span{
	font-size: 1em;
}
.member_name b{
	font-size: 1.7em;
}
.modal__container {
	max-width: calc(100% - 100px);
	height: calc(100% - 100px);
}
.jy_img{
	width: auto;
	height: 65px;
}
.ta_img{
	height: 85px;
}
.kk_img{
	height: 100px
}
.modal__content_box>.member_name span{
	font-size: 1.25em;
}
.modal__content_box>.member_name b {
  font-size: 2em;
}
.modal__content_box h4{
	font-size: 1.4em;
}
.modal__content_box p{
	margin-bottom: 2em;
	font-size: 1.05em;
	line-height: 1.7
}
.modal__content figure{
	height: 300px;
	background: url("../images/staff01.jpg") center / 100% auto no-repeat;
}
}
@media screen and (min-width:768px) {
#about .slider_box{
	margin-left:-2em;
}
.staff_first{
	padding: 1.2em 2em 2em 2em;
}
.staff_first span{
	font-size: 1.6em;
}
.staff_first p{
	font-size: 1.1em
}
#staff{
	margin-bottom: 5em;
}
#staff .ttl {
	margin-top: inherit;
	padding-left: 93px;
}
#staff .ttl::before {
	width: 77px;
  height: 81px;
}
#staff dl{
	margin-top: 2.5em;
}
.member_list li{
	height: auto;
	margin-bottom: 6em;
}
.jy_img{
	height: 75px;
}
.ta_img{
	height: 110px;
}
.kk_img{
	height: 130px
}
.modal__content_box>.member_name b {
	margin-left: 15px;
  font-size: 2.3em;
}
.modal__content figure{
	height: 350px;
}
}
@media screen and (min-width:930px) {
.member01 {
}	
}
@media screen and (min-width:1024px) {
#staff .ttl {
	padding-left: 115px;
}
#staff .ttl::before {
	width: 93px;
	height: 96px;
}
#staff dl{
	display: flex;
	align-items: center;
}
#staff dd{
	margin-top: inherit;
	font-size: 1.25em;
}
.member_list{
	margin-top: 4em;
}
.member_list::after{
    width: calc(92% / 3);
}
.member_list li{
	width: calc(92% / 3);
}
.modal__content_box{
	padding: 3em 3em 2em 3em
}
.jy_img{
	height: 80px;
}
}
@media screen and (min-width:1100px) {
.modal__container {
	max-height: 750px
}
.modal__content {
	display: flex;
	justify-content: space-between;
}
.modal__content figure{
	width: 50%;
	height: 750px;
	background: url("../images/staff01.jpg") center / auto 100% no-repeat;
}
.modal__content_box{
	width: 100%;
	padding: 5em 3em 2em 3em
}
.modal__content_box h3{
	margin: 0 0 2em 0;
}
}
@media print{
#staff{
	padding-top: 0.5em
	}
.member_list li{
	width: calc(92% / 3);
}
}
@media screen and (min-width:1200px) {
.staff_first span{
	font-size: 2em;
}
.staff_first p{
	font-size: 1.2em
}
.member_list{
	margin-top: 3em;
}
.member_list li{
	margin-bottom: 7em;
}
.member_name {
  right: 3em;
}
.member_name b{
	font-size: 2em;
}
}
@media screen and (min-width:1600px) {
.member_list::after{
    width: calc(86% / 3);
}
.member_list li{
	width: calc(92% / 3);
}
}
.member_list.fade-up {
	transition-delay: 1.4s;
}
#activities{
	padding-bottom: 8em;
	position: relative;
	overflow: hidden;
	background: linear-gradient(to top, #FFF, #EEFAFB);
}
#activities .wrap>.first{
	padding: 5em 0 2em 0;
}
#activities .first .ttl_box dd br{
	display: none
}
#activities>.first_img{
	content: "";
	width: 90%;
	height: 180px;
	margin-left: auto;
	margin-bottom: 4em;
	position: relative;
	z-index: 1;
}
#activities>.first_img img{
	width: 100%;
	height: 180px;
	object-fit: cover;
	object-position: top left
}
#activities>.first_img::after{
	content: "";
	width: 100%;
	height: 90%;
	position: absolute;
	left: -0.6em;
	bottom: -0.6em;
	background: linear-gradient(to top, #28939E, #89C8CF);
	z-index: -1
}
#activities.wrap.sub_ttl_box .sub_ttl{
	white-space: inherit
}
#activities .ttl {
	padding-left: 90px;
	color: var(--main-color2)
}
#activities .ttl h2::before {
	background-color: var(--main-color2)
}
#activities .ttl i {
	-webkit-text-stroke: 1px var(--main-color2);
	text-stroke: 1px var(--main-color2);
}
#activities .ttl::before {
	width: 77px;
  height: 94px;
	left: 0;
	top: -27px;
	display: block;
	background: url("../images/activities_ttl01.svg") center / 100% no-repeat;
}

#activities .first .ttl_box dd {
	margin-top: 1em;
	font-size: 1.2em;
	line-height: 1.6;
}
#activities .sub_ttl_box::before {
	margin-top: -1em;
	background: url("../images/activities_ttl02.svg") center / 100% no-repeat;
}
#activities .sdgs{
	margin-bottom: 7em;
	position: relative;
}
#activities .sdgs::before{
	content: "";
	width: 350px;
  	height: 350px;
	position: absolute;
	top: 49em;
	right: -5em;
	background: url("../images/sdgs_img01.svg") center/ 100% no-repeat;
}
#activities .sdgs_img img{
	width: 85px;
	margin-right: 0.5em;
	display: inline-block;
}
#activities .csr{
}
#activities .csr .sub_ttl_box::before {
	margin-top: -1em;
	background: url("../images/activities_ttl03.svg") center / 100% no-repeat;
}
.flex_box.secondary-list li:nth-child(2n)::after{
	background: #DA2529
}
@media screen and (min-width:480px) {
#activities>.first_img{
	height: 250px;
	margin-bottom: 5em;
}
#activities>.first_img img{
	height: 250px;
}
#activities>.first_img::after{
	left: -1em;
	bottom: -1em;
}
#activities .sdgs_img img{
	width: 100px;
	margin-right: 1em;
	display: inline-block;
}
#activities .sdgs::before{
	width: 450px;
  	height: 350px;
	top: 46em;
  	right: -5em;
}
}
@media screen and (min-width:768px) {
#activities>.first_img{
	content: "";
	width: 80%;
	height: 300px;
	margin-bottom: 7em;
}
#activities>.first_img img{
	height: 300px;
}

#activities .first .ttl_box dd {
	font-size: 1.4em;
}
#activities .sdgs::before{
	width: 627px;
	height: 523px;
	top: 25em;
	right: -14em;
}
}
@media screen and (min-width:1024px) {
#activities .wrap>.first{
	padding: 7em 0 6em 0;
}	
#activities .ttl {
	padding-left: 103px;
}
#activities .ttl::before {
	width: 89px;
  height: 108px;
}
#activities .first .ttl_box dd br{
	display: block
}
#activities>.first_img{
	content: "";
	width: 45%;
	height: 200px;
	position: absolute;
	top: 7em;
	right: 0;
	z-index: 2;
}
#activities>.first_img img{
	width: 100%;
	height: 200px;
	object-fit: cover;
	object-position: top left
}
#activities>.first_img::after{
	content: "";
	width: 100%;
	height: 85%;
	position: absolute;
	background: linear-gradient(to top, #28939E, #89C8CF);
	z-index: -1
}
#activities .sdgs::before{
	width: 695px;
	height: 604px;
	top: 25em;
  	right: -22em;
}
#activities .sdgs_img img{
	width: inherit;
	margin-right: 1.5em;
}
}
@media screen and (min-width:1200px) {
#activities .ttl {
	padding-left: 132px;
}
#activities .ttl::before {
	width: 116px;
	height: 154px;
}
#activities .wrap>.first{
	padding: 7em 0 10em 0;
}
#activities .first .ttl_box dd {
	margin-top: 2em;
	font-size: 1.4em;
	line-height: 2;
}
#activities>.first_img{
	height: 300px;
}
#activities>.first_img img{
	height: 300px;
}
#activities>.first_img::after{
	left: -1.3em;
	bottom: -1.3em;
}
}
@media screen and (min-width:1600px) {
#activities .wrap>.first{
	padding: 7em 0 15em 0;
}
#activities .first .ttl_box dd {
	margin-top: 2em;
	font-size: 1.7em;
	line-height: 2;
}
#activities>.first_img{
	height: 400px;
}
#activities>.first_img img{
	height: 400px;
}
#activities .sdgs::before{
	width: 800px;
	height: 672px;
}
}
#activities .fade-bg-cover {
	transition-delay: .4s
}
#activities .fade-bg-cover::before {
	transition-delay: .8s;
	background: linear-gradient(to right, #40a9e8, #0065a2)
}
#activities>.first_img::after {
	opacity: 0
}
#activities> .first_img.is-active::after {
	opacity: 1;
	transition: all .6s;
	transition-delay: .4s
}
@media print{ 
	#activities{
		padding-bottom: 4em
	}
	#activities>.first_img::after {
		opacity: 1
	}
	.csr{
		padding-top: 2em
}
}