
@charset "utf-8";





/****************************************************************************************
/* ヘッダー設定
****************************************************************************************/


#header{
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:155px;
	box-shadow:0 2px 2px rgba(0,0,0,0.1);
	z-index:1000;
	margin:0px auto 0px auto;
	background-color :#ffffff;
}

#header .header_in {
	position: relative;
	width: 100%;
	height: 90px;
	margin:0px auto 0px auto;
	border-bottom:1px solid #e3e3e3;
}






#header_right{
float:right;
margin-top: 14px;
margin-right: 10px;
}


#header_inq{
padding-top: 10px;
padding-bottom: 10px;
padding-right: 10px;
float:right;
overflow:hidden;
}

#header_inq li{
float:left;
margin-left: 5px;

}

#header_inq li:last-child{
float:right;
}

#header_inq li a{
display:block;
color:#fff;
font-size:85%;
text-align:center;
border-radius:4px;
}


#header_inq a:hover {
  -webkit-animation: zoom .3s;
  animation: zoom .3s;
}
@-webkit-keyframes zoom {
  50% {
    -webkit-transform: scale(1.1);
  }
}
@keyframes zoom {
  50% {
    transform: scale(1.1);
  }
}




#header_inq span {
	font-weight: 400;
}



.japan{
	padding-top: 7px;
	padding-left: 6px;
	padding-bottom:11px;
	padding-right:10px;
	background-color:#E71A2D;
	width:160px;
	height: 40px;
	line-height: 25px;
}

.japan span{
	display:inline-block;
	background-image:url(../images/japan.png);
	background-repeat:no-repeat;
	background-position:0 50%;
	background-size:25px auto;
	padding:0 0 0 30px;
	font-weight:700;
}







#gnavi{
	display: flex;
	width: 1200px;
	overflow:hidden;
	margin:0px auto 0px auto;
}

#gnavi li a{
	text-decoration:none;
	color:#222;
	display:block;
	font-size:90%;
	font-weight:700;
	padding-top:11px;
	transition: all 0.2s ease 0s;
	height:65px;
	line-height:100%;
}



#gnavi li a.active,
#gnavi li a:hover
{
	box-shadow: 0px -5px 0px 0px #E71A2D inset;
	color: #3049A3;
}


#gnavi li{
	width:23%;
	height:65px;
	text-align:center;
	border-left:1px solid #cccccc;

}

#gnavi li:first-child{
	width: 8%;
	text-align:center;

}



#gnavi li:last-child{
	text-align:center;
	border-right:1px solid #cccccc;

}




#gnavi li img {
	margin-top: 11px;
	margin-left: 2px;
	width: auto;
	height: 20px;
}

#gnavi li span {
	display: block;
	padding-top: 3px;
	margin-bottom: -6px;
	font-size: 90%;
	font-weight: 700;
}

#gnavi li p {
	display: block;
	padding-top: 14px;
	font-size: 100%;
	font-weight: 700;
}



/******************************************************************************
/* フェードインアニメ用
******************************************************************************/

/*フェードインアニメ*/
/*左から右にフェードイン*/
.left-to-right {
	opacity: 0;
	transform: translateX(-150px);
	transition: all 1s;
}
.left-to-right.scrollin {
	opacity: 1;
	transform: translate(0);
	}

/*下から上にフェードイン*/
.down-to-top {
	opacity: 0;
	transform: translateY(100px);
	transition: all 1s;
	transition-delay: 0.5s;

}
.down-to-top.scrollin {
	opacity: 1;
	transform: translateY(0);

}



/****************************************************************************************
/* ヘッダーロゴ
****************************************************************************************/


ul.main_area_head {
	position: absolute;
	display: flex;
	width: 45%;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	left:10px;
	z-index: 10;
	margin: 0px auto 0px auto;
}


.main_area_logo {
	display: inline-block;
	width: 40%;
	height: auto;
	margin-top : 5px;
	margin-left : 10px;

}


.main_area_logo img {
	width: auto;
	height: 50px;
}


.main_area_title {
	display: inline-block;
	width: 60%;
	height: auto;
}




.main_area_title img {
	width: 100%;
	height: auto;
}




/****************************************************************************************
/* スライドショー
****************************************************************************************/

#main_image_area {
	position: relative;
	margin: 155px auto 0px auto;
	width: 100%;
	height: 500px; /* 全画面表示 */
	z-index: 1;
	background-image: url(../images/background01.png?ver-20240901);
	background-repeat:  repeat;
	overflow: hidden;
}



#main_image_area:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 2;
	animation: main_copy_slidein 3s cubic-bezier(0.08, 1, 0.08, 1);
	width: 100%;
	height: 100%;
	background: url(../images/main_bg.png) no-repeat bottom right;
	background-size: 45% auto;

}


 @keyframes main_copy_slidein {
 0% {
 opacity: 0;
 transform: translate(50px, 50px);
}
 35% {
 opacity: 0;
 transform: translate(50px, 50px);
}
 100% {
 opacity: 1;
 transform: translate(0, 0);
}
}



#viewer {
	position: relative;
	margin: -1px auto 0 auto;
	width: 100%;
	height: 600px; /* 全画面表示 */
	z-index: 1;
}

#viewer > img {
	width: 100%;
	height: 550px; /* 全画面表示 */
	position: absolute;
	z-index:-2;
	object-fit: cover;
	object-position: 100% 55%;

}


/******************************************************************************
/* メインコピー用
******************************************************************************/


.main_copy {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

/******************************************************************************
/* サブタイトル用
******************************************************************************/

.sub_title {
	position: relative;
	padding-top: 10px;
	padding-left: 15px;
	padding-bottom: 12px;
	background: #3049a3;
	color: white;
	font-weight: 700;
	font-size: 120%;
	letter-spacing: 1.5px;
	margin-top: 0px;
	margin-bottom: 60px;
}

.sub_title::before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(31, 48, 127);
}



/******************************************************************************
/* アニメーション用
******************************************************************************/


.top_copy {
	position: absolute; /* if position is not set, the script will set it to 'relative'. */
	z-index: 3; /* if z-index is not set, the script will set it to '2'. */
	width: 100%;
	bottom: 3%;
	right: 3%;
	filter: drop-shadow(1px 1px 0px #555555);

}




#top_copy_in {
	position: absolute;
	bottom: 10px;
	right: 0px;
	z-index: 2;
	animation: hero_copys-before 4s cubic-bezier(0.08, 1, 0.08, 1);
}


.top_copy img {
	width: 50%;
	height: auto;

}




 @keyframes hero_copys-before {
 0% {
 opacity: 0;
 transform: translate(-50px, -50px);
}
 30% {
 opacity: 0;
 transform: translate(-50px, -50px);
}
 100% {
 opacity: 1;
 transform: translate(0, 0);
}
} 


#cut_in_copys {
	opacity: 0;
	animation-name: cut_in_copys;
	animation-duration: 1.0s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 1.5s;
	animation-fill-mode: forwards;
	overflow: hidden;

}
 @keyframes cut_in_copys {
 0% {
 opacity: 0;
	transform: translateY(50px);

}

 100% {
 opacity: 1;
	transform: translateY(0);
}
} 


/******************************************************************************
/* 本文
*******************************************************************************/



.contents_area {
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	padding-top: 50px;
	background-image: url(../images/background01.png?ver-20240511); 
	background-position: 0% 0%;
	overflow:hidden;
}



.contents_area2 {
	position: relative;
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	background-image: url(../images/grid_01.svg);
	background-position: center top;
	background-repeat:  repeat;
	overflow:hidden;
}



.contents_area2_2 {
	position: relative;
	width: 100%;
	margin:0px auto 0px auto;
	padding-top: 50px;
	padding-bottom: 50px;
	background: url(../images/main_bg2.png) no-repeat bottom right;
	background-size: 55% auto;
	background-position: left top;

}


.contents_area2_3 {
	position: relative;
	width: 100%;
	margin:0px auto 0px auto;
	padding-top: 50px;
	padding-bottom: 0px;
	background: url(../images/main_bg2.png) no-repeat bottom right;
	background-size: 70% auto;
	background-position: left top;

}



.contents_area4 {
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	padding-top: 50px;
	background-color: #ffffff; 
}





.contents_area_in {
	position: relative;
	width: 85%;
	margin: 0px auto 0px auto;
	padding-top: 20px;
	padding-bottom: 65px;

}

.contents_area_in2 {
	position: relative;
	width: 85%;
	margin: 0px auto 0px auto;
	padding-bottom: 80px;

}


.contents_area_in3 {
	position: relative;
	width: 85%;
	margin: 0px auto 0px auto;
	padding-top: 20px;
	padding-bottom: 50px;

}



.contents_area_in4 {
	position: relative;
	width: 85%;
	margin: 0px auto 0px auto;
	padding-top: 20px;
	padding-bottom: 50px;

}


.contents_area_sub {
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	padding-top: 50px;
	background-image: url(../images/background01.png?ver-20240511); 
	background-position: 0% 0%;
	overflow:hidden;
}



p.bold {
	font-weight: 700;
	font-size: 110%;
	color: #555555;
}




/******************************************************************************
/* トップサブメニュー
******************************************************************************/


.home_area .third_list4 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list4 {
	opacity: 1;
	margin: 0px auto 50px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.home_area .is-inview .third_list4 li:first-child {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.5s;
}

.home_area .is-inview .third_list4 li:nth-child(2n) {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.0s;
}
.home_area .is-inview .third_list4 li:nth-child(3n) {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.5s;
}



@keyframes zoomIn4{
    0% {
	transform: scale(0.5);
	opacity: 0;

    }


    100% {
	transform: scale(1);
	opacity: 1;

    }

}




.zoomIn2 {
	position: relative;
	display: block;
	margin: 0 auto 0 auto;
	width: 100%;
	height: 350px;
	background-color: #ffffff;
	color: #000000;
	padding: 20px 20px 10px 20px;
	border-radius: 6px;
	box-shadow: 1px 3px 3px 3px rgba(0,0,0,0.1);

}

.zoomIn2_image {
	width: 100%;
	height: 200px;
	overflow: hidden;

}



.zoomIn2_image img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 200px;
	object-position: 50% 50%

}



.zoomIn2:hover .zoomIn2_image img {
	transform: scale(1.3);
}




@keyframes zoomIn5{
    0% {
	transform: scale(1);
	opacity: 0;

    }


    100% {
	transform: scale(1.3);
	opacity: 1;

    }

}



.home_area .third_list4 p {
	display: block;
	margin: 7px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
}

.top_area_menu {
	position: relative;
	width: 100%;
	display: block;
	font-size: 90%;
	font-weight: 500;
	margin-bottom: 40px;
	color: #555555;

}




/******************************************************************************
/* プロダクトメニュー
******************************************************************************/


.home_area .third_list5 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list5 {
	opacity: 1;
	margin: 40px auto 15px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.home_area .is-inview .third_list5 li:first-child {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.5s;
}

.home_area .is-inview .third_list5 li:nth-child(2n) {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.0s;
}
.home_area .is-inview .third_list5 li:nth-child(3n) {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.5s;
}

.home_area .third_list5 p {
	display: block;
	margin: 7px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
}




/******************************************************************************
/* プロダクトメニュー6
******************************************************************************/


.home_area .third_list6 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list6 {
	opacity: 1;
	margin: 0px auto 15px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.home_area .is-inview .third_list6 li {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.5s;
}


.home_area .third_list6 p {
	display: block;
	margin: 7px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
	font-size: 14px;
}



/******************************************************************************
/* トップサブメニュー7
******************************************************************************/


.home_area .third_list7 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list7 {
	opacity: 1;
	margin: 0px auto 0px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}





.home_area .is-inview .third_list7 li:first-child {
	width: 23%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
}

.home_area .is-inview .third_list7 li:nth-child(2n) {
	width: 23%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
}
.home_area .is-inview .third_list7 li:nth-child(3n) {
	width: 23%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
}

.home_area .is-inview .third_list7 li:nth-child(4n) {
	width: 23%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
}


.home_area .third_list7 p {
	display: block;
	margin: 12px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
	font-size: 13px;
}




.zoomIn7_image {
	width: 100%;
	height: 150px;
	overflow: hidden;

}



.zoomIn7_image img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 150px;
	object-position: 50% 50%

}

.zoomIn7_image:hover img {
	transform: scale(1.3);
}





/******************************************************************************
/* プロダクトリスト設定
******************************************************************************/



.product_list_link {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link {
	opacity: 1;
	margin: 0px auto 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.is-inview .product_list_link li:first-child {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(2n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(3n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(4n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(5n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 10px;
	text-align: center;
}

@keyframes zoomIn4{
    0% {
	transform: scale(0.5);
	opacity: 0;

    }


    100% {
	transform: scale(1);
	opacity: 1;

    }

}

p.product_name {
	display: block;
	width: 100%;
	margin: 0 auto 0 auto;
	font-weight: 700;
	font-size: 90%;
}



/******************************************************************************
/* プロダクトリスト設定2
******************************************************************************/



.product_list_link2 {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link2 {
	opacity: 1;
	margin: 0px auto 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.is-inview .product_list_link2 li:first-child {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(2n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(3n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 10px;
	text-align: center;
	margin-right: 0%;
}

.is-inview .product_list_link2 li:nth-child(4n) {
	width: 22%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(5n) {
	width: 15.0%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 10px;
	text-align: center;
}



/******************************************************************************
/* プロダクトリスト設定3
******************************************************************************/



.product_list_link3 {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link3 {
	opacity: 1;
	margin: 0px auto 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.is-inview .product_list_link3 li:first-child {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(2n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(3n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(4n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(5n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 10px;
	text-align: center;
}



/******************************************************************************
/* プロダクトリスト設定2
******************************************************************************/



.product_list_link4 {
	opacity: 0;
	align-items: stretch;

}

.product_list_link4 li {
  display: flex;
}

.is-inview .product_list_link4 {
	opacity: 1;
	margin: 0px auto 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	height: auto;
}



.is-inview .product_list_link4 li:first-child {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(2n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(3n) {
	width: 22%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 10px;
	text-align: center;
	margin-right: 0%;
}

.is-inview .product_list_link4 li:nth-child(4n) {
	width: 18.5%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 10px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(5n) {
	width: 15.0%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 10px;
	text-align: center;
}


.product_list_link4 .zoomIn2 {
  display: flex;
  flex-direction: column;   /* 画像とテキストを縦に積む */
  justify-content: space-between;
  width: 100%;
  height: 100%;             /* 親(li)に合わせて高さ100% */
  box-sizing: border-box;
}

/******************************************************************************
/* ヘッダー設定
******************************************************************************/


.middle_menu01_image{
	position: relative;
	width:100%;
	height:200px;
	margin-top: 155px;
	margin-bottom: 0px;
	z-index: 1;

}


.middle_menu01_image:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: url(../images/main_bg.png) no-repeat bottom right;
	background-size: 30% auto;
}


.service_title01_area_in_image {
	position: absolute;
	z-index: 1;
	top: 0px;
	left: 0px;
	margin: 0px auto 0;
	text-align: center;
	opacity: 0;
	width:100%;
	height: 200px;
	object-fit: cover;
	background-color: #ffffff;
	animation-name: anime3;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0s;
	animation-fill-mode: forwards;
	opacity: 0;

}


@keyframes anime3 {
  0% {
	opacity: 0;

  }

  100% {

	opacity: 1;

  }
}





/****************************************************************************************
/* ページタイトル設定
****************************************************************************************/




.obi {
	position: absolute;
	bottom: 0%;
	left: 7.5%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 50px; 
	z-index: 1000;
	background-color: #F3F3F3;
	animation-name: anime1;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0.5s;
	animation-fill-mode: forwards;
	opacity: 1;
	text-align: center;
}

@keyframes anime1 {
  0% {
    width: 330px;
    height: 0px;
  }

  100% {
    width: 330px;
    height: 50px;
  }
}


.obi_in {
	position: absolute;
	bottom: 0%;
	left: 0%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 35px; 
	z-index: 1000;
	animation-name: anime2;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0.7s;
	animation-fill-mode: forwards;
	opacity: 0;
	font-size: 85%;
	text-align: center;
	font-weight: 700;
	color: #3049A3;
}

.obi_in img {
	width: auto;
	height: 35px;
}

@keyframes anime2 {
  0% {
    width: 330px;
    height: 0px;
  }

  100% {
    width: 330px;
    height: 35px;
	opacity: 1;

  }
}






/******************************************************************************
/* トップボックス設定
******************************************************************************/


ul.special {
	width: 100%;
	margin: 50px auto 0 auto;
	display: flex;
	z-index: 100;


}

ul.special li:first-child {
	width: 50%;
	justify-content: center;
	margin-right: 50px;
}

ul.special li:last-child {
	width: 50%;
	justify-content: center;
	margin-right: 10px;

}



.top_box{
	border: 2px solid #3049A3;
	border-radius: 5px;
	position: relative;
	margin-bottom: 40px;
	background-color: #ffffff;
}
.top_box .title {
	position: absolute;
	right: 0;
	left: 0;
	top: -14px;
	margin-left: 1em;
}
.top_box span{
	font-size: 130%;
	font-weight: 700;
	padding: 0 .5em;
	background: #FFF;
	color: #3049A3;
}
.top_box .inner{
	margin-top: 10px;
	padding: 20px;
}

.inner_span {
	display: inline-block;
	font-weight: 700;
	color: #970032;
	background: linear-gradient(transparent 60%, yellow 30%);
}


/********************************************************************************************************
/* 本文ボックス
*********************************************************************************************************/

.top_image_box {
	display: flex;
	width: 100%;
	margin-top: 40px;
}

.top_image01 {
	width: 100%;
	margin: 0px auto 0px auto;
	text-align: left;
	z-index : 3;
	filter: drop-shadow(10px 10px 0px #BAC2E0);
}


.top_image02 {
	width: 100%;
	margin: 0px auto 0px auto;
	text-align: left;
	z-index : 3;
	filter: drop-shadow(10px 10px 0px #BAC2E0);
	margin-right: 15px;
}

.top_image03 {
	width: 100%;
	margin: 0px auto 0px auto;
	text-align: left;
	z-index : 3;
	filter: drop-shadow(10px 10px 0px #BAC2E0);
	margin-left: 15px;
}


/********************************************************************************************************
/* 利用料金ボックス
*********************************************************************************************************/


ul.cost_box {
	width: 100%;
	margin: 20px auto 0 auto;
	display: flex;
	z-index: 100;


}

ul.cost_box li:first-child {
	width: 50%;
	justify-content: center;
	margin-right: 50px;
}

ul.cost_box li:last-child {
	width: 50%;
	justify-content: center;

}


.cost_box_image01 {
	width: 100%;
	margin: 0px auto 0px auto;
	text-align: left;
	z-index : 3;
	filter: drop-shadow(10px 10px 0px #D1E9C8);
	margin-right: 15px;
}



/********************************************************************************************************
/* 本文ボックス
*********************************************************************************************************/



.ttlTombo {

	width: 100%;
	position: relative;
	padding-top: 60px;
	padding-bottom: 50px;
	padding-left: 50px;
	padding-right: 50px;

	display: block;
	border: 1px dotted #bdc3c7;
	text-align: left;
	margin: 20px auto 50px auto;
	background-color: rgba(255,255,255, 0.9);

}

.ttlTombo:before,
.ttlTombo:after,
.ttlTombo > span:before,
.ttlTombo > span:after {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	background: url(../images/imgcorner.png) 0 0 no-repeat;
}

.ttlTombo:before {
	top: -1px;
	left: -1px;
	transform: rotate(0deg);
}
.ttlTombo:after {
	top: -1px;
	right: -1px;
	transform: rotate(90deg);
}
.ttlTombo > span:before {
	bottom: -1px;
	left: -1px;
	transform: rotate(-90deg);
}
.ttlTombo > span:after {
	bottom: -1px;
	right: -1px;
	transform: rotate(180deg);
}



.ttlTombo p {
	color: #555555;
	font-weight: 700;
	font-size: 100%;
	letter-spacing : 1.5px;
	color: #524640;
}


.ttlTombo p.black {
	font-size: 140%;
	font-weight: 700;
	padding-bottom: 0px;
	margin-bottom: 15px;
	color: #CB2C3D;

}

.ttlTombo p.blue {
	position: relative;
	width: 70%;
	display: inline-block;
	font-size: 100%;
	font-weight: 700;
	padding-bottom: 0px;
	color: #444444;

}

.ttlTombo p.blue2 {
	position: relative;
	width: 70%;
	display: inline-block;
	font-size: 90%;
	font-weight: 500;
	margin-top: 30px;
	color: #555555;

}

.ttlTombo p.blue3 {
	display: inline-block;
	font-size: 120%;
	font-weight: 700;
	padding-bottom: 0px;
	margin-bottom: 0px;
	color: #4E7E3D;

}

.ttlTombo p.blue4 {
	display: inline-block;
	font-size: 100%;
	font-weight: 700;
	color: #555555;
	margin-top: 30px;

}

.ttlTombo span.red4 {
	display: inline;
	font-size: 100%;
	font-weight: 700;
	color: #970032;
	background: linear-gradient(transparent 60%, yellow 30%);
}


.ttlTombo p.red {
	font-size: 110%;
	font-weight: 500;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #B3184B;

}

.ttlTombo p.bold_green {
	display: block;
	font-size: 110%;
	line-height: 1.5;
	font-weight: 700;
	color: #6EB92B;
	margin-top: 10px;
	margin-left: 10px;
	margin-bottom: 10px;
	letter-spacing : 3px;
}



.ttlTombo_in {
	height: 150px;
	margin-left: 25px;
	margin-right: 25px;
	padding-top: 25px;
	padding-bottom: 0px;
}




.ttlTombo_in p {
	color: #555555;
	font-weight: 700;
	font-size: 100%;
	letter-spacing : 1.5px;
}

.sub_image_area {
	position: relative;
	width: 90%;
	z-index: 10;
}



.sub_image_area img {
	position: absolute;
	top: 170px;
	right: -70px;
	width: 30%;
	height: auto;
	filter: drop-shadow(10px 10px 0px #E2E2E2);

}


.more {
	width: 70%;
	text-align: right;
}



span.subtitle01 {
	display: block;
	color: #3049A3;
	font-weight: 700;
	font-size: 100%;
	letter-spacing : 1.5px;
	margin: 20px auto 10px auto;
}



/********************************************************************************************************
/* 本文ボックス2
*********************************************************************************************************/



.ttlTombo2 {

	width: 100%;
	position: relative;
	padding-top: 30px;
	padding-bottom: 32px;
	padding-left: 50px;
	padding-right: 50px;

	display: block;
	border: 1px dotted #bdc3c7;
	text-align: left;
	margin: 20px auto 50px auto;
	background-color: rgba(255,255,255, 0.9);

}

.ttlTombo2:before,
.ttlTombo2:after,
.ttlTombo2 > span:before,
.ttlTombo2 > span:after {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	background: url(../images/imgcorner.png) 0 0 no-repeat;
}

.ttlTombo2:before {
	top: -1px;
	left: -1px;
	transform: rotate(0deg);
}
.ttlTombo2:after {
	top: -1px;
	right: -1px;
	transform: rotate(90deg);
}
.ttlTombo2 > span:before {
	bottom: -1px;
	left: -1px;
	transform: rotate(-90deg);
}
.ttlTombo2 > span:after {
	bottom: -1px;
	right: -1px;
	transform: rotate(180deg);
}


.ttlTombo2 p.sub_title_black {
	font-weight: 700;
	font-size: 140%;
}


.ttlTombo2 p {
	font-weight: 700;
	font-size: 90%;
}






.sub_title_black {
	font-size: 140%;
	font-weight: 700;
	padding-bottom: 0px;
	margin-bottom: 15px;
	color: #CB2C3D;
}


p.sub_title_blue {
	font-size: 120%;
	font-weight: 700;
	padding-bottom: 0px;
	margin-bottom: 25px;
	color: #3049A3;
}



/******************************************************************************
/* トップサブメニュー
******************************************************************************/


.home_area .third_list4 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list4 {
	opacity: 1;
	margin: 0px auto 50px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.home_area .is-inview .third_list4 li:first-child {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.5s;
}

.home_area .is-inview .third_list4 li:nth-child(2n) {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.0s;
}
.home_area .is-inview .third_list4 li:nth-child(3n) {
	width: 32%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.5s;
}



@keyframes zoomIn4{
    0% {
	transform: scale(0.5);
	opacity: 0;

    }


    100% {
	transform: scale(1);
	opacity: 1;

    }

}




.zoomIn2 {
	position: relative;
	margin: 0 auto 0 auto;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
	color: #000000;
	padding: 20px 20px 10px 20px;
	border-radius: 6px;
	box-shadow: 1px 3px 3px 3px rgba(0,0,0,0.1);

}

.zoomIn2_image {
	width: 100%;
	height: 200px;
	overflow: hidden;

}



.zoomIn2_image img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 200px;
	object-position: 50% 50%

}

.zoomIn2_image:hover img {
	transform: scale(1.3);
}




@keyframes zoomIn5{
    0% {
	transform: scale(1);
	opacity: 0;

    }


    100% {
	transform: scale(1.3);
	opacity: 1;

    }

}



.home_area .third_list4 p {
	display: block;
	margin: 7px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
}

.top_area_menu {
	position: relative;
	width: 100%;
	display: block;
	font-size: 90%;
	font-weight: 500;
	margin-bottom: 40px;
	color: #555555;

}



/******************************************************************************
/* リストスタイル
*******************************************************************************/





ul.number {
	padding-left: 30px;
	margin-top: 20px;
	margin-bottom: 0px;
	list-style-type: number;
	font-weight: 700;
	font-size: 90%;

}

ul.number li {
	margin-bottom: 5px;

}




/******************************************************************************
/* サブメニュー
*******************************************************************************/




ul.submenu_nav {
	margin-top: 20px;
	margin-bottom: 20px;
	width:100%; 
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


ul.submenu_nav::after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

 
ul.submenu_nav li {
	letter-spacing:normal;
	display: inline-block;
	width: 32%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 20px;

}



.box30 {
	margin: 0 auto;
 	background: #ffffff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
	padding-top: 15px;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 10px;
	border-radius: 5px;
	height: 100%;
}

.box30 p {
	margin-top: 10px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-weight: 700;
	color: #194375;

}



.trim {
	overflow: hidden;
	width: 100%;
	height: 130px;
	margin: 0 auto;

}



.trim img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 130px;
	object-position: 50% 50%
	object-fit: cover

}

.trim:hover img {
	transform: scale(1.3);
}



/******************************************************************************
/* トップに戻る
*******************************************************************************/



#page-top {
	position: fixed;
	bottom: 39px;
	right: 0px;
	z-index:100;
}
#page-top a {
	text-decoration: none;
	width: 50px;
	display: block;

}
#page-top a:hover {
	text-decoration: none;
}


/****************************************************************************************
/* 高さを合わせる（一番高い部分に合わせる）会社概要
****************************************************************************************/





 .flex_box3{
  font-size:0;
  display:flex;
   display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
	margin-top: 30px;
	margin-bottom: 0px;
 }


 .flex_box3 .content{
   width: 60%;
   margin-left:0%;
  margin-bottom:0px;
  font-size:16px;

 }


.flex_box3 .content_image {
	margin-left:2%;
	width: 38%;
	margin-bottom: 0px;
 }


.flex_box3 .content_image img {
	filter: drop-shadow(10px 10px 0px #E2E2E2);

}

.flex_box3 .content_image2 {
	margin-left:2%;
	width: 38%;
	margin-bottom: 0px;
 }






/********************************************************************************************************
/* 会社概要ボックス
*********************************************************************************************************/




ul.top_menu_area {
	width:100%;
	text-align: justify;
	text-justify: distribute-all-lines; 
	margin-top: 0px;
}


ul.top_menu_area:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
} 
 
ul.top_menu_area li {
	letter-spacing:normal;
	display: inline-block;
	width: 100%; 
	height: auto;
	vertical-align: top;
	text-align: center;
	margin-bottom: 10px;
}




ul.top_menu_area li:last-child{
	letter-spacing:normal;
	display: inline-block;
	width: 100%; 
	height: auto;
	vertical-align: top;
	text-align: center;
	margin-bottom: 0px;
}





ul.top_menu_area li .text {


	font-size: 90%;
	color: #000000;
	font-weight: 600;
	text-align: center;
}




.menu_box01 {
	position: relative;
	width: 99%;
	height: auto;
	display: inline-block;
	padding:12px;
	border : solid 1px #CBD5E0 ;
	text-align: center;
	background-color: #ffffff;
	letter-spacing: 1.2px;

}


.menu_box02 {
	position: relative;
	width: 99%;
	height: auto;
	padding:0px;
	text-align: left;
	margin-top: 15px;
	letter-spacing: 1.2px;
}



/********************************************************************************************************
/* 各タイトル＆文章
*********************************************************************************************************/

p.Headline-simple-en {
	font-weight:700;
	display: block;
	margin-bottom: 5px;
	font-size: 100%;
	color: #C51528;
	line-height: 1.4;
}



p.Headline-simple-jp {
	display: block;
	font-size: 140%;
	line-height: 1.3;
	font-weight:700;
	margin-bottom: 20px;
}


/****************************************************************************************
/* プライバシーポリシー設定
****************************************************************************************/

.privacy{
	font-weight: 700;
	font-size: 90%;
	margin-top: 50px;
	margin-bottom: 20px;
}


p.midashi{
	font-weight: 700;
	font-size: 100%;
	color :#003366;
	margin-top: 20px;
	margin-bottom: 20px;
}



/******************************************************************************
/* お問い合わせエリア用
******************************************************************************/


ul.contact_us {
	margin-top: 0px;
	margin-bottom: 0px;
	text-align:center;
	margin-right: 0px;

}


 
ul.contact_us li {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 20px;
	margin-right: 0px;

}



.contact_txt {
	font-weight: 700;
	font-size: 80%;
	letter-spacing: 1.2px;
	margin-bottom: 5px;
}





.contact_us_box {
	width: 300px;
	position: relative;
	display:inline-block;
	border: solid 1px #ffffff;
	color:#ffffff;
	padding:10px 50px 10px 30px;
	text-align:center;
	margin-bottom: 5px;
}
.contact_us_box::after{
	position: absolute;
	content: "";
	top: calc(50% - 4px);
	right: 30px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #ffffff #ffffff;
	transform: rotate(-135deg);
	transition: .3s;
}
.contact_us_box:hover::after{
	right: 20px;
}




.contact_us_box p {
	margin-top: 4px;
	margin-bottom: 4px;
	letter-spacing: 1.5px;
	font-weight: 700;
}



.contact_us_box p img {
	width: auto;
	height: 18px;
	margin-top: -3px;
	margin-right: 10px;
}






/******************************************************************************
/* Googleマップ用
******************************************************************************/

#google_map iframe {
	width: 100%;
	height: 350px;
	margin-bottom: 20px;
}

#google_map2 iframe {
	width: 100%;
	height: 350px;
	margin-bottom: 20px;
}

#google_map3 iframe {
	width: 100%;
	height: 350px;
	margin-bottom: 20px;
}


#google_map4 iframe {
	width: 100%;
	height: 350px;
	margin-bottom: 20px;
}


.map_tab {
	width: 180px;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color :#2196BB;
	font-size: 80%;
	font-weight: 700;
	color: #ffffff;
	text-align: center;
}

/******************************************************************************
/* お問い合わせ領域用
******************************************************************************/

.contact_service_contents {
	position: relative;
	margin: 0px atuo 0 auto;
	border: solid 1px #40589F;
	border-radius: 20px;
	z-index: 100;
	width: 100%;
	padding-left: 50px;
	padding-right: 50px;
	background-color :#F7E3E3;

}





.contact_service_contents:before {
	content: "";
	position: absolute;
	display: inline-block;
	width: 100%;
	height: 100%;
}


/******************************************************************************
/* お問い合わせ用
******************************************************************************/

.footer_area {
	width: 100%;
	margin: 0px auto 0px auto;
	padding-top: 15px;
	padding-bottom: 20px;
	background: rgba(152,194,224,0.2);
	color: #ffffff;

}

.footer_area_in {
	width: 84%;
	margin: 0px auto 0px auto;
	padding-top: 0px;
	padding-bottom: 0px;
}


.footer_area2 {
	width: 100%;
	height: auto;
	margin: 0px auto 0px auto;
	padding-top: 0px;
	padding-bottom: 0px;
	color: #ffffff;
	font-weight: 700;
	background: url(../images/bottom_image2.jpg?ver-20240726) no-repeat bottom left;
	background-size: 100% auto;
	background-color: #BADBED;

}

.footer_area_in2 {
	width: 84%;
	margin: 0px auto 0px auto;
	padding-top: 40px;
	padding-bottom: 0px;
}


.footer_company2 {
	display: block;
	margin: 0px auto 0px auto;
}



.footer_company2 li:first-child img {
	width: 80px;
	height: auto;
}

.footer_company2 li {
	font-size: 90%;
	margin-bottom: 10px;

}




.footer2_company_block {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;

}



.footer2_left {
	display: block;
	width: 60%;

}


.footer2_right {
	display: block;
	width: 40%;
	text-align: right;
}






#copyright{
	font-size:70%;
	background-color:#3049A3;
	padding:12px 0;
	margin-top:0px;
	color:#fff;
	text-align: center;
	letter-spacing: 1.0px;

}



.copyright br{
	display:none;
}





ul.footer_menu2 {
	position: relative;
	top: 0;
	right: 0;

}


 
ul.footer_menu2 li {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 0px;
	margin-right: 0px;

}





ul.footer_menu2 li:last-child {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 20px;
	margin-right: 0px;

}



ul.footer_menu3 {
	position: relative;
	margin-top: 0px;
	margin-bottom: 20px;
	margin-left: 40px;

}


 
ul.footer_menu3 li {
	width: 230px;
	position: relative;
	letter-spacing:normal;
	display: block;
	text-align: left;
	margin-bottom: 15px;
	font-size: 90%;

}




ul.footer_menu3 p {
	display: block;
	padding-right: 20px;
	padding-top: 4px;

}



.footer_menu3_midashi {
	font-weight: 700;
	font-size: 100%;
	display: inline-block;
	color: #2E759A;
}

.footer_menu3_txt {
	margin: 0px auto 10px auto;
	font-weight: 700;
	font-size: 90%;
	display: inline-block;
	padding-left: 0px;
	padding-top: 0px;
	padding-bottom: 5px;
	color: #ffffff;
}






.link_icon3 {
	position: absolute;
	top: 12px;
	right: 0%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 25px;
	height: 25px;
}



/******************************************************************************
/* タブレットサイズ
*******************************************************************************/


@media screen and (max-width:1028px) {

body {
	font-size: 90%;
}



.pcOnly {
	display: none;
}


.spOnly {
	display: block;
}





/****************************************************************************************
/* ヘッダーロゴ
****************************************************************************************/


ul.main_sp_area_head {
	position: absolute;
	display: block;
	width: 100%;
	padding-top: 10px;
	padding-left: 10px;
	z-index: 10;
	margin: 0px auto 0px auto;
	background-color: #ffffff;
}


.main_sp_area_logo {
	display: inline-block;
	width: 50%;
	height: auto;
	margin-top : 5px;
	margin-bottom: 10px;
}


.main_sp_area_logo img {
	width: auto;
	height: 40px;
}


.main_sp_area_title {
	display: inline-block;
	width: 60%;
	height: auto;
}




.main_sp_area_title img {
	width: 100%;
	height: auto;
}






/****************************************************************************************
/* ヘッダー設定
****************************************************************************************/


#header{
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:0;
	box-shadow:0 2px 2px rgba(0,0,0,0.1);
	z-index:1000;
	margin:0px auto 0px auto;
	background-color :#ffffff;
}

#header .header_in {
	position: relative;
	width: 100%;
	height: 70px;
	margin:0px auto 0px auto;
	border-bottom:1px solid #e3e3e3;
}



/****************************************************************************************
/* スライドショー
****************************************************************************************/

#main_image_area {
	position: relative;
	margin: 0px auto 0px auto;
	width: 100%;
	height: 550px; /* 全画面表示 */
	z-index: 1;
	background-image: url(../images/background01.png?ver-20240901);
	background-repeat:  repeat;
	overflow: hidden;
}




/******************************************************************************
/* 本文
*******************************************************************************/



.contents_area {
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	padding-top: 30px;
	background-image: url(../images/background01.png?ver-20240511); 
	background-position: 0% 0%;
	overflow:hidden;
}



.contents_area2 {
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	padding-top: 0px;
	background-image: url(../images/grid_01.svg);
	background-position: center top;
	background-repeat:  repeat;
	overflow:hidden;
}


.contents_area2_2 {
	position: relative;
	width: 100%;
	margin:0px auto 0px auto;
	padding-top: 0px;
	padding-bottom: 200px;
	background: url(../images/main_bg2.png) no-repeat bottom right;
	background-size: 45% auto;
	background-position: left top;

}


.contents_area2_3 {
	position: relative;
	width: 100%;
	margin:0px auto 0px auto;
	padding-top: 20px;
	padding-bottom: 0px;
	background: url(../images/main_bg2.png) no-repeat bottom right;
	background-size: 70% auto;
	background-position: left top;

}


.contents_area_sub {
	width: 100%;
	height: auto;
	margin:0px auto 0px auto;
	padding-top: 0px;
	background-image: url(../images/background01.png?ver-20240511); 
	background-position: 0% 0%;
	overflow:hidden;
}





.contents_area_in {
	position: relative;
	width: 93%;
	margin: 0px auto 0px auto;
	padding-top: 0px;
	padding-bottom: 65px;

}

.contents_area_in2 {
	position: relative;
	width: 93%;
	margin: 0px auto 0px auto;
	padding-bottom: 80px;

}


.contents_area_in3 {
	position: relative;
	width: 93%;
	margin: 0px auto 0px auto;
	padding-top: 20px;
	padding-bottom: 50px;

}



.contents_area_in4 {
	position: relative;
	width: 93%;
	margin: 0px auto 0px auto;
	padding-top: 20px;
	padding-bottom: 50px;

}






/******************************************************************************
/* ヘッダー設定
******************************************************************************/


.middle_menu01_image{
	position: relative;
	width:100%;
	height:200px;
	margin-top: 10px;
	margin-bottom: 0px;
	z-index: 1;
}




/********************************************************************************************************
/* 本文ボックス
*********************************************************************************************************/



.ttlTombo {

	width: 100%;
	position: relative;
	padding-top: 20px;
	padding-bottom: 30px;
	padding-left: 20px;
	padding-right: 20px;

	display: block;
	border: 1px dotted #bdc3c7;
	text-align: left;
	margin: 40px auto 50px auto;
	background-color: rgba(255,255,255, 0.9);

}

.ttlTombo:before,
.ttlTombo:after,
.ttlTombo > span:before,
.ttlTombo > span:after {
	content: "";
	position: absolute;
	width: 7px;
	height: 7px;
	background: url(../images/imgcorner.png) 0 0 no-repeat;
}

.ttlTombo:before {
	top: -1px;
	left: -1px;
	transform: rotate(0deg);
}
.ttlTombo:after {
	top: -1px;
	right: -1px;
	transform: rotate(90deg);
}
.ttlTombo > span:before {
	bottom: -1px;
	left: -1px;
	transform: rotate(-90deg);
}
.ttlTombo > span:after {
	bottom: -1px;
	right: -1px;
	transform: rotate(180deg);
}



.ttlTombo p {
	color: #555555;
	font-weight: 700;
	font-size: 100%;
	letter-spacing : 1.5px;
	color: #524640;
}


.ttlTombo p.black {
	font-size: 140%;
	font-weight: 700;
	padding-bottom: 0px;
	margin-bottom: 0px;
	color: #970032;

}



.ttlTombo p.blue {
	position: relative;
	width: 100%;
	display: block;
	font-size: 100%;
	font-weight: 700;
	margin-top: 10px;
	padding-bottom: 0px;
	color: #444444;

}

.ttlTombo p.blue2 {
	display: inline;
	font-size: 120%;
	font-weight: 700;
	padding-bottom: 0px;
	color: #3049A3;
	background: linear-gradient(transparent 60%, yellow 30%);

}

.ttlTombo p.blue3 {
	display: inline-block;
	font-size: 120%;
	font-weight: 700;
	padding-bottom: 0px;
	margin-bottom: 0px;
	color: #4E7E3D;

}

.ttlTombo p.blue4 {
	display: inline-block;
	font-size: 100%;
	font-weight: 700;
	color: #555555;
	margin-top: 30px;

}

.ttlTombo span.red4 {
	display: inline;
	font-size: 100%;
	font-weight: 700;
	color: #970032;
	background: linear-gradient(transparent 60%, yellow 30%);
}


.ttlTombo p.red {
	font-size: 110%;
	font-weight: 500;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #B3184B;

}

.ttlTombo p.bold_green {
	display: block;
	font-size: 110%;
	line-height: 1.5;
	font-weight: 700;
	color: #6EB92B;
	margin-top: 10px;
	margin-left: 10px;
	margin-bottom: 10px;
	letter-spacing : 3px;
}



.ttlTombo_in {
	height: 150px;
	margin-left: 25px;
	margin-right: 25px;
	padding-top: 25px;
	padding-bottom: 0px;
}




.ttlTombo_in p {
	color: #555555;
	font-weight: 700;
	font-size: 100%;
	letter-spacing : 1.5px;
	color: #524640;
}




.more {
	width: 100%;
	text-align: right;
}



/********************************************************************************************************
/* 本文ボックス2
*********************************************************************************************************/



.ttlTombo2 {

	width: 100%;
	position: relative;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 15px;
	padding-right: 15px;

	display: block;
	border: 1px dotted #bdc3c7;
	text-align: left;
	margin: 20px auto 50px auto;
	background-color: rgba(255,255,255, 0.9);

}


/******************************************************************************
/* サブタイトル用
******************************************************************************/

.sub_title {
	position: relative;
	padding-top: 10px;
	padding-left: 15px;
	padding-bottom: 12px;
	background: #3049a3;
	color: white;
	font-weight: 700;
	font-size: 100%;
	letter-spacing: 1.5px;
	margin-top: 20px;
	margin-bottom: 40px;
}

.sub_title::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(31, 48, 127);
}



/******************************************************************************
/* トップボックス設定
******************************************************************************/


.sub_image_area {
	position: relative;
	width: 100%;
	top: 160px;
	left: 0px;
	z-index: 10;
}



.sub_image_area img {
	position: absolute;
	left: 0px;
	width: 100%;
	height: auto;
	filter: drop-shadow(0px 0px 0px #E2E2E2);

}



/******************************************************************************
/* トップサブメニュー
******************************************************************************/


.home_area .third_list4 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list4 {
	opacity: 1;
	margin: 0px auto 0px auto;
	display: block;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.home_area .is-inview .third_list4 li:first-child {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.5s;
	margin-bottom: 20px;
}

.home_area .is-inview .third_list4 li:nth-child(2n) {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.0s;
	margin-bottom: 20px;

}
.home_area .is-inview .third_list4 li:nth-child(3n) {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.5s;
}



@keyframes zoomIn4{
    0% {
	transform: scale(0.5);
	opacity: 0;

    }


    100% {
	transform: scale(1);
	opacity: 1;

    }

}




.zoomIn2 {
	position: relative;
	margin: 0 auto 0 auto;
	width: 100%;
	height: 100%;
	background-color: #ffffff;
	color: #000000;
	padding: 10px 10px 10px 10px;
	border-radius: 6px;
	box-shadow: 1px 3px 3px 3px rgba(0,0,0,0.1);

}

.zoomIn2_image {
	width: 100%;
	height: 130px;
	overflow: hidden;

}



.zoomIn2_image img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 130px;
	object-position: 50% 50%

}

.zoomIn2_image:hover img {
	transform: scale(1.3);
}




@keyframes zoomIn5{
    0% {
	transform: scale(1);
	opacity: 0;

    }


    100% {
	transform: scale(1.3);
	opacity: 1;

    }

}



.home_area .third_list4 p {
	display: block;
	margin: 7px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
}


/******************************************************************************
/* スマホ用メニュー
*******************************************************************************/


.sub_menu {
	display: flex;
	padding-top: 70px;
	padding-bottom: 0px;
	justify-content: space-between;
	flex-wrap: wrap;

}



nav{
	display: none;
	position: absolute;
	top:0px;
	width: 100%;
	left: 0;
	padding-bottom: 50px;
	z-index: 9999999;

}
 
/*------------------------------------プルダウンの部分を記述--------------*/
 
nav ul{
	margin:30px auto 0px;
	width: 90%;
}
 
nav ul li{
	display: inline-block;
	text-align: center;
	margin-bottom: 10px;
	letter-spacing: 1px;
}
 
/*最後のメニューは下線を不要にする -------------------------------------------*/






/*開閉ボタンの作り方 ------------------------------------------------*/

#nav_toggle {
	display: block;
	width: 45px;
	height: 45px;
	position: absolute;/*固定にします。*/
	top: 10px;
	right: 15px;/*左端に配置*/
	z-index: 9999999;
	background-color: #134165;
	border-radius: 30px;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 0px;
	padding-bottom: 4px;
	margin-top: 0px;
	margin-right: 0px;
	cursor: pointer

}



#nav_toggle div {
	position: relative;
	background-color: rgba(59,59,59,0.77);
	z-index: 999999;


}

#nav_toggle p {
	color:#134165;
	font-weight: 700;
}

 
#nav_toggle span {
	display: block;
	height: 3px;
	background-color: #ffffff;
	position:absolute;
	width: 50%;
	top: 30px;
	left: 11px;
	transition: 0.5s ease-in-out;
	text-align: center;
	margin-top: 14px;
}


 
#nav_toggle p {
	display: block;
	position:absolute;
	transition: 0.5s ease-in-out;
	text-align: center;
	margin-top: 49px;
	margin-left: 0px;
	font-size: 75%;
}

nav {
	position: fixed;
	background-color: rgba(59,59,59,0.77);
	z-index: 999999;
}

 
/*-----------------------------------------------------三本ずつずらして設定*/

#nav_toggle span:nth-child(1){
	top:0px;
}
#nav_toggle span:nth-child(2){
	top:8px;
}
#nav_toggle span:nth-child(3){
	top:16px;
}

 
/*-----------------------------開閉ボタンopen時-------*/

.open #nav_toggle span:nth-child(1) {
top: 7px;
left: 11.5px;
transform: rotate(135deg);
}
 
/* ----------------------------2本目を非表示にすることで、三本が2本になる*/

.open #nav_toggle span:nth-child(2) {
display:none;
}

.open #nav_toggle span:nth-child(3) {
top: 7px;
left: 11.5px;
transform: rotate(-135deg);
}


/******************************************************************************
/* スマホ用メニュー各ブロック
*******************************************************************************/


.homeWorkItem{text-align: center; padding: 1px;}





.homeWorkItem .line{
	display: none;
	position: absolute;
	background-color: #d9d9d9;
	transition:all 0.3s 0s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}


.homeWorkItem .line{display: block; transition:all 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1)}

.homeWorkItem .line.line-top{top: 0;left: 0; width: 100%; height: 1px}
.homeWorkItem .line.line-left{top: 0;left: 0; height: 100%; width: 1px}
.homeWorkItem .line.line-bottom{bottom: 0;left: 0; width: 100%; height: 1px}
.homeWorkItem .line.line-right{right: 0; top: 0; height: 100%; width: 1px}

.homeWorkItem a{display:block;}
.homeWorkItem a{position:relative; box-sizing:border-box;background:none; height: 65px;}
.homeWorkItem a:hover{color: #ffd20d}
.homeWorkItem a:hover .line{background-color: #ffd20d}
.homeWorkItem a:hover .line.line-top{height: 4px}
.homeWorkItem a:hover .line.line-left{width: 4px}
.homeWorkItem a:hover .line.line-bottom{height: 4px}
.homeWorkItem a:hover .line.line-right{width: 4px}

.homeWorkItem .menutitle{
	position: absolute;
	width:100%;
	top: 50%;
	transform : translateY(-50%);
	font-size: 100%;
	font-weight: 500;
	text-align: center;
	color: #ffffff;
	text-decoration: none;

}




/******************************************************************************
/* スマホ用メニュー各ブロックサイズ
*******************************************************************************/



nav ul li:nth-child(1) {
	width: 100%;
	z-index: 1;

}



nav ul li:nth-child(2) {
	width: 100%;
}



nav ul li:nth-child(3) {
	width: 100%;
}

nav ul li:nth-child(4) {
	width: 100%;
}


nav ul li:nth-child(5) {
	width: 100%;

}

nav ul li:nth-child(6) {
	width: 100%;

}


nav ul li:nth-child(7) {
	width: 100%;

}




/******************************************************************************
/* トップサブメニュー7
******************************************************************************/


.home_area .third_list7 {
	opacity: 0;
	align-items: stretch;

}

.home_area .is-inview .third_list7 {
	opacity: 1;
	margin: 0px auto 0px auto;
	display: block;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
}



.home_area .is-inview .third_list7 li:first-child {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.5s;
	margin-bottom: 20px;
}

.home_area .is-inview .third_list7 li:nth-child(2n) {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.0s;
	margin-bottom: 20px;
}
.home_area .is-inview .third_list7 li:nth-child(3n) {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.5s;
	margin-bottom: 20px;
}

.home_area .is-inview .third_list7 li:nth-child(4n) {
	width: 100%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 2.0s;
}


.home_area .third_list7 p {
	display: block;
	margin: 12px auto 0 auto;
	font-weight: 700;
	text-align: center;
	color: #CB2C3D;
	font-size: 13px;
}




.zoomIn7_image {
	width: 100%;
	height: 130px;
	overflow: hidden;

}



.zoomIn7_image img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 130px;
	object-position: 50% 50%

}

.zoomIn7_image:hover img {
	transform: scale(1.3);
}





/******************************************************************************
/* メインコンテンツ設定
*******************************************************************************/



.main_contents {
	width: 90%;
	margin: -60px auto 0 auto;
}



.main_contents4 {
	width: 90%;
	margin: 220px auto 0px auto;
}




}


/******************************************************************************
/* スマートフォンサイズ
*******************************************************************************/


@media screen and (max-width:600px) {



body {
	font-size: 80%;
}

.pcOnly {
	display: none;
}


.spOnly {
	display: block;
}


/****************************************************************************************
/* スライドショー
****************************************************************************************/


#viewer > img {
	width: auto;
	height: 600px; /* 全画面表示 */
	position: absolute;
	z-index:-2;
	object-fit: cover;
	object-position: 50% 100%;

}


/******************************************************************************
/* メインコンテンツ設定
*******************************************************************************/


.main_contents {
	position: relative;
	width: 90%;
	margin: -30px auto 0px auto;
}


.main_contents2 {
	width: 90%;
	margin: 50px auto 0 auto;
}



.main_contents4 {
	width: 90%;
	margin: 200px auto 220px auto;
}

.main_contents5 {
	width: 90%;
	margin: -16% auto 400px auto;
}


.main_contents6 {
	width: 90%;
	margin: 200px auto 250px auto;
}





.sub_area_logo img {
	width: 40%;
	height: auto;
	filter:drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.2));
}


.sub_area_title img {
	width: 50%;
	height: auto;
}






.ttlTombo p.blue {
	font-size: 100%;
	font-weight: 700;
	padding-bottom: 0px;
	color: #0D3B85;

}


/******************************************************************************
/* アニメーション用
******************************************************************************/


.top_copy {
	position: absolute; /* if position is not set, the script will set it to 'relative'. */
	z-index: 3; /* if z-index is not set, the script will set it to '2'. */
	width: 100%;
	bottom: 3%;
	right: 3%;
	filter: drop-shadow(1px 1px 0px #555555);

}




#top_copy_in {
	position: absolute;
	bottom: 10px;
	right: 0px;
	z-index: 2;
	animation: hero_copys-before 4s cubic-bezier(0.08, 1, 0.08, 1);
}


.top_copy img {
	width: 90%;
	height: auto;

}



/******************************************************************************
/* メインコンテンツ枠設定
*******************************************************************************/


.area_service_contents {
	position: relative;
	border: solid 1px #40589F;
	border-radius: 20px;
	background: url(../images/background01.png) no-repeat top left;
	background-size: 100% auto;
	border-radius: 20px 20px 20px 20px;
	margin-top: -30px;
	z-index: 100;
}

.oneArea {
	position: relative;
	display: block;
	width: 95%;
	margin: 0px auto 0px auto;
	padding: 0 10px;
	font-family: "Yu Gothic",sans-serif;
	font-weight: 700;
	margin-top: 30px;
	z-index: 3;
}


/******************************************************************************
/* 各画像設定
*******************************************************************************/


.chart_image01 {
	position: relative;
	margin: 30px auto 30px auto;
	z-index: 100;

}

.chart_image02 img {
	width: 100%;
	height: auto;

}



/******************************************************************************
/* お問い合わせ領域用
******************************************************************************/

.contact_service_contents {
	position: relative;
	margin: 0px atuo 0px auto;
	border: solid 1px #40589F;
	border-radius: 20px;
	z-index: 100;
	width: 100%;
	background-color :#F7E3E3;

}


/****************************************************************************************
/* 高さを合わせる（一番高い部分に合わせる）会社概要
****************************************************************************************/





 .flex_box3{
  font-size:0;
  display:block;

	margin-top: 20px;
	margin-bottom: 0px;
 }


 .flex_box3 .content{
   width: 100%;
   margin-left:0%;
  margin-bottom:25px;
  font-size:16px;

 }


.flex_box3 .background01 {
	margin-left:0%;
	width: 100%;
	height: 250px;
	background-image:url(../company/images/company.jpg?ver-20241220); 
	background-repeat:  no-repeat;
	background-position:center center;
	background-size:cover;
	margin-bottom: 50px;
 }


.flex_box3 .content_image {
	margin-left:0%;
	width: 97%;
	margin-bottom: 10px;
 }


.flex_box3 .content_image img {
	filter: drop-shadow(10px 10px 0px #E2E2E2);

}

.flex_box3 .content_image2 {
	margin-left:0%;
	width: 97%;
	margin-bottom: 0px;
 }


/****************************************************************************************
/* ページタイトル設定
****************************************************************************************/




.obi {
	position: absolute;
	bottom: 0px;
	left: 2.5%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 30px; 
	z-index: 1000;
	background-color: #F9F9F9;
	animation-name: anime1;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0.5s;
	animation-fill-mode: forwards;
	opacity: 1;
	text-align: center;
}

@keyframes anime1 {
  0% {
    width: 200px;
    height: 0px;
  }

  100% {
    width: 200px;
    height: 40px;
    background-color: #F9F9F9;
  }
}


.obi_in {
	position: absolute;
	bottom: 0%;
	left: 0%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 15px; 
	z-index: 1000;
	background-color: #F9F9F9;
	animation-name: anime2;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0.7s;
	animation-fill-mode: forwards;
	opacity: 0;
	text-align: center;
	font-weight: 700;
	color: #3049A3;
}

.obi_in img {
	width: auto;
	height: 15px;
}

@keyframes anime2 {
  0% {
    width: 200px;
    height: 0px;
  }

  100% {
    width: 200px;
    height: 30px;
	opacity: 1;

  }
}



.service_title01_area_in_image {
	position: absolute;
	z-index: 0;
	top: 0px;
	left: 0px;
	margin: 0px auto 0;
	text-align: center;
	opacity: 0;
	width:100%;
	height: 200px;
	object-fit: cover;
	background-color: #ffffff;
	animation-name: anime3;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0s;
	animation-fill-mode: forwards;
	opacity: 0;

}


@keyframes anime3 {
  0% {
	opacity: 0;

  }

  100% {

	opacity: 1;

  }
}



/******************************************************************************
/* 会社概要
******************************************************************************/


.menu_box01 {
	position: relative;
	width: 100%;
	height: auto;
	display: inline-block;
	padding:0px;
	border : solid 0px #CBD5E0 ;
	text-align: center;
	background-color: #ffffff;
	letter-spacing: 1.2px;

}


.menu_box02 {
	position: relative;
	width: 100%;
	height: auto;
	padding:0px;
	text-align: left;
	margin-top: 15px;
	letter-spacing: 1.2px;
}


/********************************************************************************************************
/* 会社概要ボックス
*********************************************************************************************************/




ul.top_menu_area {
	width:100%;
	text-align: justify;
	text-justify: distribute-all-lines; 
	margin-top: 0px;
}


ul.top_menu_area:after {
	content:"";
	display: none;
	width: 100%;
	line-height:0;
	height: 0;
} 
 
ul.top_menu_area li {
	letter-spacing:normal;
	display: inline-block;
	width: 100%; 
	height: auto;
	vertical-align: top;
	text-align: center;
	margin-bottom: 0px;
}




/******************************************************************************
/* プロダクトリスト設定
******************************************************************************/



.product_list_link {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link {
	opacity: 1;
	margin: 0px auto 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	flex-wrap: wrap;
}



.is-inview .product_list_link li:first-child {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(2n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(3n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(4n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link li:nth-child(5n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 15px;
	text-align: center;
}

@keyframes zoomIn4{
    0% {
	transform: scale(0.5);
	opacity: 0;

    }


    100% {
	transform: scale(1);
	opacity: 1;

    }

}

p.product_name {
	display: block;
	width: 100%;
	margin: 0 auto 0 auto;
	font-weight: 700;
	font-size: 90%;
}



/******************************************************************************
/* プロダクトリスト設定2
******************************************************************************/



.product_list_link2 {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link2 {
	opacity: 1;
	margin: 0px auto 0px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	flex-wrap: wrap;
}



.is-inview .product_list_link2 li:first-child {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(2n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(3n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(4n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link2 li:nth-child(5n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 15px;
	text-align: center;
}





/******************************************************************************
/* プロダクトリスト設定3
******************************************************************************/



.product_list_link3 {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link3 {
	opacity: 1;
	margin: 0px auto 0px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	flex-wrap: wrap;
}



.is-inview .product_list_link3 li:first-child {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(2n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(3n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(4n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link3 li:nth-child(5n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 15px;
	text-align: center;
}




/******************************************************************************
/* プロダクトリスト設定4
******************************************************************************/



.product_list_link4 {
	opacity: 0;
	align-items: stretch;

}

.is-inview .product_list_link4 {
	opacity: 1;
	margin: 0px auto 0px auto;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	flex-wrap: wrap;
}



.is-inview .product_list_link4 li:first-child {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.0s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(2n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.3s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(3n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.6s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(4n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 0.9s;
	margin-bottom: 15px;
	text-align: center;
}

.is-inview .product_list_link4 li:nth-child(5n) {
	width: 48%;
	opacity: 0;
	animation: zoomIn4 0.7s ease-in-out forwards;
	animation-delay: 1.2s;
	margin-bottom: 15px;
	text-align: center;
}

/******************************************************************************
/* お問い合わせエリア用
******************************************************************************/


ul.contact_us {
	width: 100%;
	margin-top: 0px;
	margin-bottom: 20px;
	text-align:center;
}


 
ul.contact_us li {
	letter-spacing:normal;
	display: block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 0px;
	margin-right: 0px;
	width: 100%;
}

ul.contact_us li:last-child {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 0px;
	margin-right: 0px;
	width: 100%;

}

.contact_midashi {
	margin: 0px auto 10px auto;
	font-weight: 700;
	font-size: 110%;
	display: inline-block;
	padding-left: 0px;
	padding-top: 0px;
	padding-bottom: 5px;
}

.contact_txt {
	font-weight: 700;
	font-size: 80%;
	letter-spacing: 1.2px;
	margin-bottom: 5px;
}

.contact01 {
	margin-bottom: 5px;
	letter-spacing: 1.5px;
	font-weight: 700;
	font-size: 80%;

}

.contact02 {
	font-size: 100%;
	margin-bottom: 0px;
	letter-spacing: 1.5px;
	font-weight: 700;
}

.contact03 {
	font-size: 70%;
	display: inline-block;
	margin-left: 2px;
	margin-bottom: 10px;
	font-weight: 700;
}


.footer_company2 {
	font-size: 80%;

}



.footer2_company_block {
	width: 100%;
	display: block;
	flex-wrap: wrap;
	justify-content: space-between;

}





.thanks_area {
	width: 100%;
	text-align: left;
	font-family: "Noto Serif JP", serif;
	line-height: 1.8;
	letter-spacing: 1.2px;
	font-size: 80%;

}



/******************************************************************************
/* お問い合わせ用
******************************************************************************/



.footer_area2 {
	width: 100%;
	height: auto;
	margin: 0px auto 0px auto;
	padding-top: 0px;
	padding-bottom: 0px;
	color: #ffffff;
	font-weight: 700;
	background: url(../images/bottom_image2.jpg?ver-20240726) no-repeat bottom left;
	background-size: 130% auto;
	background-color: #BADBED;

}

.footer_area_in2 {
	width: 84%;
	margin: 0px auto 0px auto;
	padding-top: 30px;
	padding-bottom: 20px;
}


.footer_company2 {
	display: block;
	margin: 0px auto 0px auto;
}



.footer_company2 li:first-child img {
	width: 80px;
	height: auto;
}

.footer_company2 li {
	font-size: 90%;
	margin-bottom: 10px;

}




.footer2_company_block {
	width: 100%;
	display: block;
	flex-wrap: nowrap;
	justify-content: space-between;

}



.footer2_left {
	display: block;
	width: 100%;

}


.footer2_right {
	display: block;
	width: 100%;
	text-align: center;
}






#copyright{
	font-size:70%;
	background-color:#3049A3;
	padding:12px 0;
	margin-top:0px;
	color:#fff;
	text-align: center;
	letter-spacing: 1.0px;

}



.copyright br{
	display:none;
}





ul.footer_menu2 {
	position: block;
	width: 100%;
}


 
ul.footer_menu2 li {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 0px;
	margin-right: 0px;

}


ul.footer_menu2 li:first-child {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 0px;
	margin-right: 0px;

}


ul.footer_menu2 li:last-child {
	letter-spacing:normal;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin-bottom: 0px;
	margin-right: 0px;

}


/******************************************************************************
/* トップに戻る
*******************************************************************************/



#page-top {
	position: fixed;
	bottom: 38px;
	right: 0px;
	z-index:100;
}


}
