@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c&family=Noto+Sans+JP:wght@100..900&display=swap');

:root {
--point-color-green: #04b321;
--point-color-red: #F74460;
--point-color-blue: #5FDB5F;
--txt-color: #333;
--head-color: rgba(255,255,255,.8);
--content-padding: 120px 0;
--base-color: #eee;
}


/*COMMON*/


html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

/* CSS Document */

body{
	margin: 0;
	padding: 0;
	position: relative;
	background: #fff url("../../images/bg_01.jpg") no-repeat center top 0;
	background-size: 100% 100%;
	font-family: "Noto Sans JP", sans-serif;
	color: #000000;
	letter-spacing: .05em;
	
	transition: all .4s ease-in-out;
}
/*body {
    visibility: hidden;
}*/
a{
	color: #505050;
	text-decoration: none;
}
a:hover,.submitBtn:hover{
	transition: all .2s ease-in-out;
	opacity: .8;
}

#wrap{
	position: relative;

}

#logo-splash{
	
}
#logo-splash img{
	width: 200px;
	height: auto;
}


/*header*/


header{
	position: fixed;
	
	top: 0;
	left: 0;
	
	width: 100%;
	background: rgba(255,255,255,.0);
	
	z-index: 10;
	
	padding:0 0;
	
	transition: all .3s ease-in-out;
	
}

header section{
	padding:15px 0 13px;
	
	align-items: center;
	
	width: calc(100% - 50px);
	margin: 0 auto;
	transition: all .3s ease-in-out;
	
	position: relative;


}
header.fixed section{
	padding:0 0 0;
	width: calc(100% - 50px);
}

header section .headLang{
	position: absolute;
    right: -25px;
    top: 0px;
    display: flex;
    flex-wrap: wrap;
    border-radius: 0;
    z-index: 10;
    width: 213px;
}
header section .headLang a{
	display: block;
	width:100%;
	text-align: center;
	color: #fff;
	font-size: 12px;
    padding: 10px 20px 10px 20px;
    background: #003681;
	transition: all .2s ease-in-out;
}
header section .headLang a:hover{
    background: #03285C;

}
.headContact{
	position: fixed;
	right: 0;
	top: 0;
	background: #AD0429;
	
	border-bottom-left-radius: 70px;
}
.headContact a{
	font-size: 18px;
	color: #fff;
	padding: 85px 50px 55px;
	
	width: 213px;
	
	text-align: center;
	display: block;
}


header nav{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	align-items: center;
	
	padding: 10px 0;
	transition: all .3s ease-in-out;
}

header.fixed nav{
	background: rgba(255,255,255,1);
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
	box-shadow: 0 0 20px rgba(0,0,0,.1);
	padding: 15px 20px;
	transition: all .3s ease-in-out;
}
header nav > ul#header-menu{
	display: flex;
	flex-wrap: wrap;
	
	gap:0 60px;
	
	padding-right: 240px;
}
header nav > ul#header-menu > li{
	position: relative;
	z-index: 1;
}
li.submenu::after{
	content: "";
	position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	top: 1px ;
	right: -17px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: rotate(45deg);
	transition: all .2s ease-in-out;
}
li.submenu:hover::after{
	top: 5px ;
	right: -17px;
}

header nav > ul#header-menu a,
header nav > ul#header-menu span{
	font-size: 16px;
	font-weight: 700;
	display: block;
	cursor: pointer;
	color: #fff;
}

header.fixed nav > ul#header-menu a,
header.fixed nav > ul#header-menu span{
	color: #333;
}
header.fixed li.submenu::after{
	border-right: 1px solid #707070;
	border-bottom: 1px solid #707070;
}



header nav > ul#header-menu .submenulist{
	display: none;
	position: absolute;
	top: 25px;
	left: 50%;
	transform: translateX(-50%);
	box-shadow: 0 0 10px rgba(0,0,0,.1);
	padding: 30px 30px 10px 30px;
	background: #fff;
	border-radius: 15px;
	z-index: 2;
}
header nav > ul#header-menu .submenulist li{
	margin-bottom: 20px;
	text-align: center;
}
header nav > ul#header-menu .submenulist li a{
	white-space: nowrap;
	color: #333;
}


header .logo{
	width: 178px;
	text-align: center;
	transition: all .3s ease-in-out;
}
header.fixed .logo{
	width: 125px;
}
header .logo a{
	display: block;
}
header .logo img{
	width: 100%;
	height: auto;
	transition: all .3s ease-in-out;
}






/*wrap*/



#wrap{
	width: 100%;
	padding: 0 0 0;
	margin: 0 auto;
	background: #fff;
}

body#home #wrap{
	width: 100%;
	padding: 0 0 0;
	margin: 0 auto;
	
	background: #fff;
}

body#other #wrap{
	width: 100%;
	padding: 0 0 0;
	margin: 0 auto;
	
	background: url("../../images/home/concept_case_top_bg.jpg") repeat-x left top -1000px;
	background-size: 1600px auto;
}

#promotion{
	
	width: 100%;
	overflow: hidden;
	position: relative;
	
	background: #F0F7F6 url("../../images/promo/promo_bg.png") no-repeat 0 0;
	background-size: 100% auto;
	z-index: 1;
	padding-bottom: 50px;

	
}


#promotion .inner{
	width:calc(100% - 85px);
	height: 100%;
	position: relative;
	padding: 190px 0 190px 0;
}

.promoMov {
  position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-bottom-right-radius: 70px;
}
#promotion .promoMov::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(-25deg, rgba(0,0,0,.0) 60%, rgba(0,0,0,.7) 100%);
	z-index: 1;
}
.promoMov video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

#promotion .inner .promoRead{
	font-size: 74px;
	position: relative;
	z-index: 1;
	
	padding: 0 0 0 100px;
	
	color: #fff;
	
	line-height: 160%;
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: 300;
	
	text-shadow: 1px 1px 5px rgba(0,0,0,.6);
}

#promotion .inner .promoRead2{
	font-size: 16px;
	font-weight: 600;
	position: relative;
	z-index: 1;
	
	padding: 10px 0 0 100px;
	
	color: #fff;
	
	line-height: 160%;
	text-shadow: 0 0 3px rgba(0,0,0,.9);
}

#promotion .inner .promoBtn{
	padding: 40px 0 0 100px;
	position: relative;
	z-index: 1;
}

.promoBtn a{
	display: inline-block;
	padding: 20px 60px 20px 30px;
	
	background: #AD0429 url("../../images/arrow_w.svg") no-repeat right 20px center;
	background-size: 21px 18px;
	
	color: #fff;
	
	border-radius: 30px;
}



.promoloopwrap {
  width: 100%;

	position: absolute;
	bottom: 30px;
	left: 0;
	
}

.promolooptxt {
  display: flex;
  white-space: nowrap;
  animation: marquee 20s linear infinite;
}

.promolooptxt span {
  flex-shrink: 0;
  padding-right: 0;
	font-size: 110px;
	font-weight: 200;
	letter-spacing: .3em;
	color: #B1B1B1;
	line-height: 100%;
}

/* 無限ループアニメーション */
@keyframes marquee {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}





/*homeCont*/


.homeCont{
	z-index: 0;
	
	width: 100%;

	margin: 0 auto;

	
	position: relative;
	
}




/* h2 */

.h2title{
	font-size: 40px;
	line-height: 180%;
	font-weight: 400;
	letter-spacing: .1em;
	margin-bottom: 50px;
	text-align: center;
	
	color: #000;
	
	position: relative;
}
.h2title span{
	display: inline-block;
	
	position: relative;
}
.h2title span::before{
	content: "";
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
	height: 10px;
	border-radius: 10px;
	opacity: .15;
	background: #0053C7;
}

.h2title.h2title1{
	position: relative;
	padding-top: 70px;
	margin-bottom: 50px;
}
.h2title.h2title1::before{
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 92px;
	height: 9px;
	background: url("../../images/title_bg_01.png") no-repeat 0 0;
	background-size: 92px 9px;
}

.h2title.h2title2{

	font-size: 46px;
}
.h2title.h2title2 span{
	color: #AD0429;
}
.h2title.h2title2 span::before{
	content: "";
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
	height: 10px;
	border-radius: 10px;
	opacity: .15;
	background: #0053C7;
}


.h2title.h2title3{

	margin-bottom: 0;
	letter-spacing: .1em;
	font-size: 36px;
	font-weight: 500;
}
.h2title.h2title3 span{
	color: #AD0429;
	font-size: 53px;
}
.h2title.h2title3 span::before{
	display: none;
}
.h2titleBtmtxt{
	font-size: 22px;
	text-align: center;
	letter-spacing: .1em;
	
	margin-bottom: 50px;
}
.h2titleBtmtxt span{
	color: #AD0429;
}



.h2title.h2title4{

	margin-bottom: 50px;
	letter-spacing: .1em;
	font-size: 28px;
	font-weight: 500;
}
.h2title.h2title4 span::before{
	display: none;
}






/* homeConcept */


.homeContTop{
	padding: 100px 0;
	background: #F0F7F6 url("../../images/home/concept_case_top_bg.jpg") repeat-x center bottom;
	background-size: 1600px auto;
	position: relative;
}
.homeContTop::after{
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translate(-50%);
	background: url("../../images/home/concept_weve_icon1.png") no-repeat 0 0;
	background-size: 100%;
	width: 68px ;
	height: 38px;
	z-index: 1;
}

.homeContMdl{
	padding: 100px 0;
	background: #fff url("../../images/home/concept_case_btm_bg.jpg") repeat-x center bottom;
	background-size: 1600px auto;
	position: relative;
}
.homeContMdl::after{
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translate(-50%);
	background: url("../../images/home/concept_weve_icon1.png") no-repeat 0 0;
	background-size: 100%;
	width: 68px ;
	height: 38px;
	z-index: 1;
}



.homeContBtm{
	padding: 100px 0 50px;
	background: #F0F7F6 url("../../images/home/concept_case_top_bg.jpg") repeat-x center bottom;
	background-size: 1600px auto;
	position: relative;
}
.homeContBtm.otherpage{
	padding: 100px 0 50px;
	background: linear-gradient(#F6F6F6, #fff 50%);
}

.homeContAbout{
	padding: 130px 0 100px;
	background: #fff url("../../images/home/concept_case_btm_bg.jpg") repeat-x center bottom;
	background-size: 1600px auto;
	position: relative;
}




#homeNews{
	padding: 130px 0 100px;
	background: #F0F7F6 url("../../images/home/concept_case_top_bg.jpg") repeat-x center bottom;
	background-size: 3200px auto;
	position: relative;
}






.homeConcept{
	display: flex;
	
	flex-wrap: wrap;
	
	width: 94%;
	
	max-width: 1200px;
	min-width: 1000px;
	
	margin: 0 auto;
	
	justify-content: space-between;
}

.homeCases{
	width: 31%;
	border: 1px solid #707070;
	border-top-right-radius: 25px;
	border-top-left-radius: 25px;
	border-bottom-right-radius: 25px;
	padding: 20px 0;
	position: relative;
}
.caseIcon{
	position: absolute;
	padding: 0 10px;
	background: #F0F7F6;
	top: -14px;
	left: 50%;
	color: #003681;
	transform: translateX(-50%);
	font-size: 23px;
	letter-spacing: .2em;
	font-weight: bold;
}
.caseIcon span{
	font-size: 12px;
	display: inline-block;
	padding: 0 5px 0 0;
}

.homeCasesImg{
	margin-bottom: 10px;
}
.homeCasesImg img{
	width: 100%;
	height: auto;
	
}
.homeCasesTxt{
	font-size: 18px;
	text-align: center;
	line-height: 160%;
	padding: 0 10px 0 10px;
}




.homeCaseArea{
	display: flex;
	flex-wrap: wrap;
	
	align-items: center;

	width: 94%;
	
	max-width: 1200px;
	min-width: 1000px;
	
	margin: 0 auto 70px;
	
	justify-content: space-between;


}
.homeCaseArea:nth-of-type(2n){
	flex-direction: row-reverse;
}

.homeCaseAreaImg{
	width: 58%;
	border-top-right-radius: 70px;
	border-bottom-left-radius: 70px;
	overflow: hidden;
	
	margin-left: -50px;

}
.homeCaseArea:nth-of-type(2n) .homeCaseAreaImg{
	margin-left: 0;
	margin-right: -50px;
}
.homeCaseAreaImg img{
	width: 100%;
	height: auto;
}
.homeCaseAreaTxt{
	width:42%;
}
.caseTitleIcon{
	padding: 20px 0 0 37px;
	background: url("../../images/home/concept_light.png") no-repeat 0 0;
	background-size: 33px 55px;
	position: relative;
	display: block;
	font-size: 10px;
	margin-bottom: 40px;
	color: #003681;
	letter-spacing: .2em;
	font-weight: bold;
}
.caseTitleIcon span{
	display: block;
	font-size: 20px;
	margin-top: 6px;
}

.caseTitleIcon::before{
	content: "";
	position: absolute;
	bottom: -14px;
	left: 0%;
	width: 56px;
	height: 5px;
	background: url("../../images/title_bg_01.png") no-repeat 0 0;
	background-size: 56px 5px;
}
.homeCaseAreaTxt h3{
	font-weight: bold;
	font-size: 42px;
	margin-bottom: 40px;
	line-height: 140%;
	letter-spacing: .1em;
}
.homeCaseAreaTxt p{
	font-size: 18px;
	line-height: 200%;
}





.homeBizArea{
	display: flex;
	flex-wrap: wrap;
	
	width: 94%;
	
	max-width: 1200px;
	min-width: 1000px;
	
	margin: 0 auto 70px;
	
	justify-content: space-between;


}

.homeBizBox{
	width: 23%;
}
.homeBizBox a{
	display: block;
}
.homeBizImg{
	width: 100%;
	border-top-left-radius: 70px;
	border-bottom-right-radius: 70px;
	overflow: hidden;
	position: relative;
	
	margin-bottom: 20px;
}
.homeBizImg img{
	width: 100%;
	height: auto;
}
.homeBizImg div{
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #F0F7F6;
	padding: 5px 10px 5px 0;
	line-height: 100%;
	font-size: 12px;
}
.homeBizImg div span{
	color: #AD0429;

}

 
.homeBizTxt{
}
.homeBizTxt h3{
	font-size: 34px;
	line-height: 100%;
	margin-bottom: 20px;
}
.homeBizTxt p{
	font-size: 16px;
	line-height: 160%;
	letter-spacing: .1em;
}


.homeBizBtn {
	text-align: center;
	margin-bottom: -80px;
	position: relative;
	z-index: 1;
}
.homeBizBtn a{
	display: inline-block;
	padding: 25px 80px 25px 50px;
	
	background: #AD0429 url("../../images/arrow_w.svg") no-repeat right 30px center;
	background-size: 21px 18px;
	
	color: #fff;
	
	border-radius: 50px;
	
	font-size: 24px;
	
	letter-spacing: .1em;
}




@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}

.scroll-infinity{
	margin-bottom: 70px;
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(150vw / 2);
}
.scroll-infinity__item>img {
  width: 100%;
}


.homePartBtn {
	text-align: center;
	margin-bottom: 0;
	position: relative;
	z-index: 1;
}
.homePartBtn a{
	display: inline-block;
	padding: 20px 70px 20px 40px;
	
	background: #fff url("../../images/arrow_r.png") no-repeat right 25px center;
	background-size: 21px 18px;
	
	border: 2px solid #AD0429;
	
	color: #AD0429;
	
	border-radius: 50px;
	
	font-size: 16px;
	
	letter-spacing: .1em;
	
	font-weight: bold;
}





.homeNewsArea{
	display: flex;
	flex-wrap: wrap;
	
	width: 94%;
	
	max-width: 1200px;
	min-width: 1000px;
	
	margin: 0 auto 70px;
	
	justify-content: space-between;

}
.homeNewsTitle{
	width: 25%;
}
.homeNewsTitle h2{
	position: relative;
	font-size: 36px;
	padding: 0 0 30px 0;
	font-weight: 500;
}
.homeNewsTitle h2 span{
	font-size: 22px;
	display: block;
	margin-top: 10px;
	font-weight: 500;
}
.homeNewsTitle h2::before{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 92px;
	height: 9px;
	background: url("../../images/title_bg_01.png") no-repeat 0 0;
	background-size: 92px 9px;
}


.homeNewsLists{
	width: 75%;
}
.homeNewsList{
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ccc;
}
.homeNewsList dt{
	width: 200px;
	border-bottom: 1px solid #ccc;
	padding: 40px 0;
	color: #AD0429;
	font-weight: 500;
}
.homeNewsList dd{
	width: calc(100% - 200px);
	border-bottom: 1px solid #ccc;
}
.homeNewsList dd a{
	display: block;
	padding: 40px 0;
}




.newsBtn {
	text-align: left;
	margin-top: 30px;
}
.newsBtn a{
	display: inline-block;
	padding: 10px 50px 10px 20px;
	
	background: #888888 url("../../images/arrow_w.svg") no-repeat right 15px center;
	background-size: 16px 14px;
		
	color: #fff;
	
	border-radius: 50px;
	
	font-size: 14px;
	
	letter-spacing: .1em;
	
	font-weight: bold;
}




#footContact{
	display: flex;
	flex-wrap: wrap;
	
	align-items: flex-end;
	
	width: 94%;
	
	max-width: 1200px;
	min-width: 1000px;
	
	margin: -100px auto 0;
	
	padding: 0 0 100px;
	
	justify-content: space-between;
	
	position: relative;

}

.footContactpage{
	background: url("../../images/bg_foot.png") repeat-x center top;
	background-size: 1600px auto;
	padding: 120px 0 0 0;
}
.footContactpage #footContact{
	margin: 0 auto 0;
}
.footContactpage.footTop{
	background: url("../../images/bg_foot.png") repeat-x center -30px;
	background-size: 1600px auto;
	padding: 120px 0 0 0;
}


.contactImg{
	width:48%;
}
.contactImg img{
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	overflow: hidden;
	width: 100%;
	height: auto;
	display: block;
}
.contactTxt{
	width:48%;
}

.contactTxt h2{
	position: relative;
	font-size: 36px;
	padding: 0 0 30px 0;
	font-weight: 500;
	letter-spacing: .1em;
}
.contactTxt h2 span{
	font-size: 22px;
	display: block;
	margin-top: 10px;
	font-weight: 500;
}
.contactTxt h3{
	position: relative;
	font-size: 12px;
	padding: 0 0 10px 0;
	font-weight: 500;
}
.contactTxt p{
	font-size: 16px;
	line-height: 160%;
}
.contactTxt p span{
	font-size: 12px;
}
.footcontactBtn {
	text-align: left;
	margin-top: 20px;
	position: relative;
	z-index: 1;
}
.footcontactBtn a{
	display: inline-block;
	padding: 20px 70px 20px 40px;
	
	background: #fff url("../../images/arrow_r.png") no-repeat right 25px center;
	background-size: 21px 18px;
	
	border: 2px solid #AD0429;
	
	color: #AD0429;
	
	border-radius: 50px;
	
	font-size: 16px;
	
	letter-spacing: .1em;
	
	font-weight: bold;
}



/*pageCont*/




.pageTitle{
	background: #ccc url("../../images/pagetitlejpg.jpg") no-repeat 0 0;
	background-size: cover;
	
	padding: 200px 0;
	
	margin-right: 50px;
	
	border-bottom-right-radius: 70px;
	text-align: center;
	
	position: relative;
}
.pageTitle::after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(-0deg, rgba(0,0,0,.0) 40%, rgba(0,0,0,.1) 100%);
	z-index: 0;
}
.pageTitle.service{
	background: #ccc url("../../images/page/service/images/pagetitle.jpg") no-repeat center 0;
	background-size: cover;
}
.pageTitle.service2{
	background: #ccc url("../../images/page/service/images/pagetitle2.jpg") no-repeat center 0;
	background-size: cover;
}
.pageTitle.service3{
	background: #ccc url("../../images/page/service/images/pagetitle3.jpg") no-repeat center 0;
	background-size: cover;
}
.pageTitle.service4{
	background: #ccc url("../../images/page/service/images/pagetitle4.jpg") no-repeat center 0;
	background-size: cover;
}
.pageTitle.service5{
	background: #ccc url("../../images/page/service/images/pagetitle5.jpg") no-repeat center 0;
	background-size: cover;
}
.pageTitle.profile{
	background: #ccc url("../../images/page/company_info/images/pagetitle.jpg") no-repeat 0 0;
	background-size: cover;
}
.pageTitle.news{
	background: #ccc url("../../images/page/news/images/pagetitle.jpg") no-repeat center 0;
	background-size: cover;
}
.pageTitle.access{
	background: #ccc url("../../images/page/access/images/pagetitle.jpg") no-repeat center 0;
	background-size: cover;
}


.parentTitle{
	color: #fff;
	font-weight: 500;
	letter-spacing: .2em;
	padding: 0 0 20px 0;
	margin-bottom: 20px;
	background: url("../../images/pagetitle_wave.png") no-repeat center bottom;
	background-size: 60px 7px;
	z-index: 2;
	position: relative;

	text-shadow: 1px 1px 20px rgba(0,0,0,.6);
}

.h1title{
	font-size: 16px;
	color: #fff;
	
	position: relative;
	z-index: 1;
	text-shadow: 1px 1px 20px rgba(0,0,0,.7);
}
.h1title h1{
	font-size: 40px;
	padding: 0 0 20px;
	color: #fff;
	font-weight: 500;
	letter-spacing: .2em;
}
.h1title span{
	font-size: 16px;
	color: #fff;
	font-weight: 500;
	letter-spacing: .2em;
}










.pageCont{
	z-index: 1;
	
	width: 100%;

	margin: -60px auto 100px auto;
	padding: 70px 70px 0 70px;

	max-width: 1200px;
	min-width: 1000px;
	
	min-height: 500px;
	
	position: relative;
	
	background: #fff;
	
	border-radius: 70px;
		
}



p.pageTxt{
	line-height: 180%;
	font-size: 16px;
}




/*会社案内　メッセージ*/

.messageTop{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	margin-bottom: 50px;
}
.messageL{
	width: 48%
}
.messageL img{
	width: 100%;
	height: auto;
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	display: block;
}

.messageR{
	width: 48%
}


.messageTxt{
	font-size: 18px;
	line-height: 180%;
	padding-top: 10px;
}
.messageBtm{
	margin-top: 50px;
	text-align: right;
	font-size: 18px;
	font-weight: bold;
	line-height: 140%;
}
.messageBtm span{
	display: block;
	font-size: 16px;
	margin-bottom: 10px;
}

/*会社概要　役員一覧*/

.officerLists{
	width: 60%;
	margin: 0 auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	padding: 0 0 0 0;
	border-top:1px solid rgba(0,0,0,.3)
}
.officerList{
	width: 100%;
	margin: 0;
	padding: 50px 0;
	border-bottom:1px solid rgba(0,0,0,.3)
}

.officerListImg{
	width: 25%;
}
.officerListImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
}

.officerListTxt{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.officerListName{
	width: 100%;
	font-size: 32px;
	margin-bottom: 0;
	padding-top: 0;
	font-weight: bold;
	
	text-align: center;
}
.officerListName span{
	font-size: 18px;
	display:block;

	padding-bottom: 8px;
	
	
}
.officerListName span.kana{
	margin-top: 10px;
	font-size: 14px;
	font-weight: normal;
	display:block;
	
	margin-left: 10px;

}




ul.officerListHiostory{
	width: 65%;

}
ul.officerListHiostory li{
	margin-bottom: 10px;
	line-height: 160%;
	font-size: 16px;
	
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;

}
ul.officerListHiostory li span{
	display: block;
	padding-right: 10px;
	font-weight: bold;
	
	width: 110px;
}
ul.officerListHiostory li p{
	display: block;
	padding-right: 10px;
	font-weight: normal;
	
	width: calc(100% - 110px);

}



/*会社概要　沿革*/

.historyLists{
	width: 80%;
	margin: 0 auto;
}
.historyLists li {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 30px 0;
}
.historyLists li::before {
    position: absolute;
    top: 40px;
    left: 96px;
    content: "";
    display: block;
    width: 9px;
    height: 9px;
    background-color: #AD0429;
    border-radius: 50%;
}
.historyLists li::after {
    position: absolute;
    top: 50px;
    left: 100px;
    content: "";
    display: block;
    width: 1px;
    height: calc(100% + 1px);
    background-color: #AD0429;
    z-index: 2;
}
.historyLists li:nth-last-child(1)::after {
    position: absolute;
    top: 50px;
    left: 100px;
    content: "";
    display: block;
    width: 1px;
    height: calc(100% + 1px);
    background: linear-gradient(0, #ffffff, #AD0429);
    z-index: 2;

}



.historyLists li p {
	width: 100px;
	line-height: 180%;
}

.historyLists li div.historyListTxt {
	width: calc(100% -  130px);
	line-height: 180%;
}

.historyLists li div.historyListTxt span{
	display: block;
	margin-bottom: 6px;

}


/*会社概要　パートナー一覧*/

.partnerLists{
	
}
ul.partnerList{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	border-left: 1px solid #ddd;
	border-top: 1px solid #ddd;

}
ul.partnerList li{
	padding: 30px 20px 27px;
	text-align: center;
	font-weight: bold;
	
	font-size: 16px;
	
	line-height: 160%;
	
	width: 33.33333%;
	
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
.lastlists{
	padding: 30px 0;
	text-align: left;
	font-size: 16px;
	
}



/*事業案内　*/

.businessIndexLists{
}

.businessIndexList{
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;
	
	align-items: center;
	
	margin-bottom: 100px;
}
.businessIndexList:nth-of-type(2n){
	flex-direction: row-reverse;
}
.businessIndexImg{
	width: 50%;
}
.businessIndexImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 70px;
	border-bottom-right-radius: 70px;
}

.businessIndexTxt{
	width: 46%;
	padding-left: 30px;
}

.businessIndexTxt .businessIndexTitleTop {
	margin-bottom: 8px;
}
.businessIndexTxt .businessIndexTitleTop span{
	font-size: 11px;
	display: inline-block;
	
	background: #003681;
	
	color: #fff;
	padding: 5px 15px 6px 15px;
	line-height: 100%;
	
}
.businessIndexTxt .businessIndexTitle{
	font-size: 34px;
	margin-bottom: 30px;
}

.businessIndexTxt p{
	margin-bottom: 30px;
	line-height: 160%;
}

.businessIndexTxt .businessIndexBtn{
	text-align: left;
}

.businessIndexTxt .businessIndexBtn a {
    display: inline-block;
    padding: 15px 55px 15px 30px;
    background: #fff url(../../images/arrow_r.png) no-repeat right 20px center;
    background-size: 18px 16px;
    border: 2px solid #AD0429;
    color: #AD0429;
    border-radius: 50px;
    font-size: 16px;
    letter-spacing: .1em;
    font-weight: bold;
}



/*事業案内　国内事業*/



.domesticTop{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	margin-bottom: 70px;
}
.domesticL{
	width: 46%
}
.domesticL img{
	width: 100%;
	height: auto;
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	display: block;
}

.domesticR{
	width: 48%
}


.domesticTxt{
	font-size: 18px;
	line-height: 200%;
	padding-top: 10px;
}

.domesticCont{
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;
	
	margin-bottom: 70px;
}
.domesticContImg{
	width: 26%;
}
.domesticContImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
}
.domesticContTxt{
	width: 70%;
}
.domesticContTxt .domesticContTxtBox{
	/*border: 1px solid #707070;
	border-radius: 30px;
	
	padding: 30px;*/
	
	line-height: 180%;
	font-size: 16px;
}



/*事業案内　輸出事業*/


.exportTxtTop{
	font-size: 18px;
	line-height: 200%;
	
	margin-bottom: 70px;
}


.exportList{
	
}




.exportList{
	border-top-left-radius: 70px;
	border-bottom-right-radius: 70px;

	border: 1px solid rgba(0,0,0,.3);
	padding: 40px 50px;
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;
	
	align-items: center;
	
	margin-bottom: 60px;
	
	position: relative;
}

.exportList::after {
    content: "";
    position: absolute;
    display: block;
    width: 24px;
    height: 24px;
    bottom: -40px;
    left: 50%;
    border-right: 2px solid #003681;
    border-bottom: 2px solid #003681;
    transform: rotate(45deg) translateX(-50%);
    transition: all .2s ease-in-out;
}
.exportList:nth-last-child(1)::after {
	display: none;
}

.exportListImg{
	width: 30%;
}
.exportListImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 50px;
	border-bottom-right-radius: 50px;
}

.exportListTxt{
	width: 66%;
	padding-left: 30px;
}
.exportListTxt h3{
	font-size: 24px;
	font-weight: 500;
}
.exportListTxt .exportTitleTop {
	margin-bottom: 8px;
}

.exportListTxt .exportTitleTop span{
	font-size: 11px;
	display: inline-block;
	
	background: #003681;
	
	color: #fff;
	padding: 5px 15px 6px 15px;
	line-height: 100%;
	
}




/*事業案内　輸入事業*/




.inportTop{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	margin-bottom: 70px;
}
.inportL{
	width: 46%
}
.inportL img{
	width: 100%;
	height: auto;
	border-top-left-radius: 60px;
	border-bottom-right-radius: 60px;
	display: block;
}

.inportR{
	width: 48%
}


.inportTxt{
	font-size: 18px;
	line-height: 200%;
	padding-top: 10px;
}



.importItems{
	display: flex;
	flex-wrap: wrap;
	
	justify-content: flex-start;
	
	gap:20px 2.5%;
	
}

.importItem{
	width: 23%;
	padding: 10px 10px 15px 10px;

	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
	border: 1px solid #ccc;

}
.importItemImg{
	padding: 0 0 0 0;
}

.importItemImg img{
	width: 100%;
	height: auto;
	border-radius: 15px;

}
.importItem h3{
	text-align: left;
	font-weight: 400;
	padding-top: 10px;
	
	line-height: 160%;
	font-size: 13px;
	border-top: 1px solid #ccc;

}
.importItem p{
	padding: 4px 0 0 0;
	text-align: left;
	font-size: 12px;
	margin-top: 2px;
	
	color: #999;
	
}


/*事業案内　倉庫事業*/


.stockTxtTop{
	font-size: 18px;
	line-height: 200%;
	
	margin-bottom: 70px;
}


.stockList{
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;
	
	margin-bottom: 70px;
}

.stockListImg{
	display: block;
	
	width: 34%;

}
.stockListImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
}

.stockListTxt{
	width: 60%;
	
	font-size: 16px;
	line-height: 180%;
}
.stockListTxt2{
	width: 100%;
	
	font-size: 16px;
	line-height: 180%;
}

.contBox:nth-of-type(2n) .stockList{
	flex-direction: row-reverse;
}






/*会社案内*/

.profileIndexLists{
	display: flex;
	flex-wrap: wrap;
	
	justify-content: flex-start;
	gap:30px 3%;
}
.profileIndexList{
	width: 30%;
	
	padding: 30px 20px 10px;
	
	border: 1px solid #ddd;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
}
.profileIndexList a{
	display: block;
}

.profileIndexImg{
	margin-bottom: 20px;
}
.profileIndexImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 10px;
	border-bottom-right-radius: 10px;
}
.profileIndexList h2{
	margin-bottom: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	text-align: center;
	
	font-size: 18px;
}

.profileIndexBtn {
	text-align: right;
}
.profileIndexBtn span{
    display: inline-block;
    padding: 10px 45px 10px 20px;
    background: #fff url(../../images/arrow_r.png) no-repeat right 0 center;
    background-size: 16px 12px;
    color: #AD0429;
    border-radius: 50px;
    font-size: 16px;
    letter-spacing: .1em;
    font-weight: bold;
}




/*お知らせ*/


.newsLists{
	width: 80%;
	margin: 0 auto;
	
	padding-top: 40px;
}
.newsList{
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ccc;
}
.newsList dt{
	width: 200px;
	border-bottom: 1px solid #ccc;
	padding: 40px 0;
	color: #AD0429;
	font-weight: 500;
}
.newsList dd{
	width: calc(100% - 200px);
	border-bottom: 1px solid #ccc;
}
.newsList dd a{
	display: block;
	padding: 40px 0;
    background: #fff url(../../images/arrow_r.png) no-repeat right 0 center;
    background-size: 22px 18px;
}

.newsDetail{
	width: 80%;
	margin: 0 auto 40px;
	
	padding: 40px 0 40px;
	border-bottom: 1px solid #ddd;
	
	
}

.newsDetailTitle{
	font-size: 32px;
	text-align: left;
	
	padding:0 0 30px 0;
	font-weight: 500;
	line-height: 160%;
}


.newsDetailDate{
	font-size: 12px;
	text-align: right;
	
	padding:0 0 30px 0;
}


.newsDetailBody{
	font-size: 16px;
	text-align: left;
	
	padding:0 0 30px 0;
	line-height: 180%;
}


.backList{
	text-align: center;
}

.backList a{
    display: inline-block;
    padding: 10px 20px 10px 45px;
    background: #fff url(../../images/arrow_back.png) no-repeat left 20px center;
    background-size: 14px 12px;
    border: 2px solid #AD0429;
    color: #AD0429;
    border-radius: 50px;
    font-size: 14px;
    letter-spacing: .1em;
    font-weight: bold;
}





/*アクセス*/


.accessTxtTop{
	font-size: 18px;
	line-height: 200%;
	
	margin-bottom: 70px;
}


.accessList{
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;
	
	margin-bottom: 70px;
}

.accessListImg{
	display: block;
	
	width: 34%;

}
.accessListImg img{
	width: 100%;
	height: auto;
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
}

.accessListTxt{
	width: 60%;
	
	font-size: 16px;
	line-height: 180%;
}
.accessListTxt .accessTxtTitle{
	margin-bottom: 6px;
	text-align: left;
}
.accessListTxt .accessTxtTitle span{
	font-size: 11px;
    display: inline-block;
    background: #003681;
    color: #fff;
    padding: 5px 15px 6px 15px;
    line-height: 100%;
}
.accessListTxt .accessTxtBody{
	font-size: 16px;
	line-height: 160%;
}

.accessListMap{
	width: 100%;
	height: 400px;
	margin-top: 50px;
}
.accessListMap iframe{
	width: 100%;
	height: 100%;
	
}

.contBox:nth-of-type(2n) .accessList{
	flex-direction: row-reverse;
}








/*汎用パーツ*/


.contBox{
	margin-bottom: 70px;
}


.contBox p.contTxt{
	font-size: 16px;
	line-height: 180%;
	margin-bottom: 30px;
}
.contBox p.contTxt.philosophyRead{
	font-size: 60px;
    font-family: serif;
}
.contBox ul.contUL{
	margin-bottom: 30px;
	margin-left: 1.2em;
}
.contBox ul.contUL li{
	margin-bottom: 10px;
	line-height: 160%;
	list-style-type: disc;
}


.contBox ol.contOL{
	margin-bottom: 30px;
	margin-left: 1.2em;
}
.contBox ol.contOL li{
	margin-bottom: 10px;
	line-height: 160%;
	list-style-type: decimal;
}


.contBox p.txtR{
	font-size: 16px;
	line-height: 180%;
	margin-bottom: 30px;
	text-align: right;
}

.privacytable{
	margin-bottom: 30px;
}
.privacytable table{
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
}


.privacytable table tr th,
.privacytable table tr td{
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 15px;
	line-height: 160%;
}
.privacytable table tr th{
	background: #eee;
}


h2.conth2{
	position: relative;
	font-size: 36px;
	font-weight: 400;
	padding: 40px 0 40px 0;
	letter-spacing: .14em;
}
h2.conth2::before{
	content: "";
	position: absolute;
	background: url("../../images/h2title_line.png") no-repeat 0 0;
	background-size: 100% auto;
	
	width: 111px;
	height: 8px;
	
	top: 0;
	left: -17px;
}

h3.conth3{
	position: relative;
	font-size: 28px;
	font-weight: 400;
	padding: 0 0 40px 0;
	letter-spacing: .14em;
}






.chart_01{
	width: 80%;
	margin: 0 auto;
}
.chart_01.w100{
	width: 100%;

}



.chart_01 table{
	padding: 10px 0 0 0;
	margin: 0;
	
	border-top: 1px solid rgba(0,0,0,.3);
	
	display: block;
}
.chart_01 table tbody{
	display: block;
}
.chart_01 table tr{
	display: flex;
	flex-wrap: wrap;
	
	margin: 0 0 10px;
	padding: 0 0 10px;
	
	border-bottom: 1px solid rgba(0,0,0,.3);
}

.chart_01 table th,
.chart_01 table td{
	font-size: 16px;
	line-height: 180%;
}
.chart_01 table th{
	border-right: 1px solid rgba(0,0,0,.3);
	width: 20%;
	color: #003681;
	text-align: left;
	padding: 15px 0
}

.chart_01 table td{
	width: 80%;
	padding: 15px 20px
}




/*contact*/


.contactTxtTopBox{
	border-top-left-radius: 30px;
	border-bottom-right-radius: 30px;
	border: 1px solid #ddd;
	
	padding: 0 0 30px 0 ;
	
	overflow: hidden;
	
	margin-bottom: 50px;
	
}
.contactTxtTopBoxTitle{
	padding: 30px 30px 30px 30px;
	background: #AD0429;
	
	color: #fff;
	
	font-size: 24px;
}
.contactTxtTopBox p{
	padding: 20px 30px 20px 30px;
	
	line-height: 180%;
}

.contactTxtTopBox ul{
	padding: 0 30px 0 30px;
	display: flex;
	
	flex-wrap: wrap;
	
	
}
.contactTxtTopBox ul li{
	margin-bottom: 10px;
	line-height: 120%;
	width: 33.3333%;
	font-size: 24px;
	font-weight: bold;
}
.contactTxtTopBox ul li span{
	font-weight: normal;
	display: block;
	padding-right: 6px;
	font-size: 14px;
	margin-bottom: 3px;
	padding: 0 0 2px 8px;
	border-left: 3px solid #AD0429;
	
	line-height: 104%;
	
}





.contactTxtTop{
	font-size: 18px;
	line-height: 200%;
	
	margin-bottom: 70px;
}
.contactTxtTop span{
	font-size: 16px;
}


.completeTxt{
	font-size: 18px;
	line-height: 200%;

	
	width: 80%;
	margin: 0 auto 50px;
}
.completeTxt span{
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 40px;
	display: block;
	text-align: center;
	color: #003681;
}





.contactFlow{
	
	width: 400px;
	margin: 0 auto 80px;
}
.contactFlow img{
	width: 100%;
	height: auto;
}

.formchart{
	
}
.formchart dl{
	display: flex;
	flex-wrap: wrap;
}
.formchart dt{
	padding: 20px;
	width: 300px;
	font-weight: 700;
	line-height: 160%;
	margin-bottom: 50px;
}
.formchart dd{
	width: calc(100% - 300px);
	margin-bottom: 50px;
}

.confirm {
	margin-bottom: 30px;
}

.confirm dt{
	padding: 20px;
	border-bottom: 1px solid #eee;
	margin-bottom: 0;
}
.confirm dd{
	padding: 20px;
	border-bottom: 1px solid #eee;
	margin-bottom: 0;
	line-height: 160%;
}



.select {
  display: block;
  position: relative;
  vertical-align: middle;
	
}

select {
	appearance: none;
	width: 100%;
	padding: 20px;

	border: 2px solid #AD0429;
	outline: 0;
	background: #fff;
	background-image: none;
	box-shadow: none;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	cursor: pointer;

	font-weight: bold;
	font-size: 18px;
	border-radius: 30px;
}

.select::before {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 26px;
	width: 0;
	height: 0;
	border-width: 10px 6px 0 6px;
	border-style: solid;
	border-color: #AD0429 transparent transparent transparent;
	content: "";
	pointer-events: none;
}

select::-ms-expand {
  display: none;
}

.formchart textarea,
.formchart input[type=text],
.formchart input[type=tel],
.formchart input[type=email]{
	border: 2px solid #AD0429;
	font-weight: bold;
	font-size: 18px;
	border-radius: 30px;
	width: 100%;
	padding: 20px;
}

.formchart .forms{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.formchart .forms .formS{
	width: 48%;
}

.formchart .forms .formM{
	width: 80%;
}
.formchart .forms .formTxt{
	width: 20%;
	padding: 20px;
	font-weight: 700;
	line-height: 160%;
	margin-bottom: 30px;
}





.submitBtn{
	text-align: center;
}
.submitBtn input[type="submit"]{
    display: inline-block;
    padding: 15px 55px 15px 30px;
    background: #fff url(../../images/arrow_r.png) no-repeat right 20px center;
    background-size: 18px 16px;
    border: 2px solid #AD0429;
    color: #AD0429;
    border-radius: 50px;
    font-size: 16px;
    letter-spacing: .1em;
    font-weight: bold;
	line-height: 100%;
	
	cursor: pointer;
}

.submitBtn input[type="button"],
.submitBtn a.backform{
    display: inline-block;
    padding: 15px 30px 15px  55px;
	background: #fff url(../../images/arrow_back.png) no-repeat left 20px center;
    background-size: 18px 16px;
    border: 2px solid #AD0429;
    color: #AD0429;
    border-radius: 50px;
    font-size: 16px;
    letter-spacing: .1em;
    font-weight: bold;
	line-height: 100%;
	margin-right: 20px;
}




/*footer*/

footer{
	background: #AD0429;
	border-top-left-radius: 70px;
	margin-left: 50px;
}

footer section{
	padding: 50px 120px 70px 120px;
}

.footerTop{
	border-bottom: 1px solid rgba(255,2550,255,.6);
	
	display: flex;
	flex-wrap: wrap;
	
	justify-content: space-between;
	
	align-items: center;
	
	padding: 0 0 40px;
}
.footerLogo{
	width: 90px;
}
.footerLogo img{
	width: 100%;
	height: auto;
}
.footerCopy{
	width: calc(100% - 120px);
	color: #fff;
	line-height: 150%;
	font-size: 12px;
}
.footerCopy span{
	font-size: 10px;
}


.footermarc{
	width: 130px;
}
.footermarc img{
	width: 100%;
	height: auto;
}

.footerBtm{
	padding: 40px 0 0;
}
.footMenu{
	display: flex;
	
	justify-content: space-between;
}

.footAddress{
	width: 36%;
	color: #fff;
	font-size: 14px;
	line-height: 160%;

}
.footMenu > ul{
	width: 16%;
}
.footMenu ul li{
	margin-bottom: 15px;
	font-weight: 500;
}


.footMenu ul li span,
.footMenu ul li a{
	color: #fff;
	font-size: 14px;
}

.footMenu ul li.fmTitle span,
.footMenu ul li.fmTitle a{
	font-weight: 500;
}

.footMenu ul li.fmTitle ul{
	margin-top: 15px;
	margin-bottom: 0;
	font-weight: 500;
	margin-left: 10px;
}


/*inview設定*/


.inview{
	transition: 0.6s ease-in-out;
	transition-delay:0.4s;
	opacity: 0;
}
.inviewOn{
	opacity: 1;
}






.pc{
	display: block
}
.sp{
	display: none
}

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

	.pc{
		display: none
	}
	.sp{
		display: block
	}

	

	#wrap{
		position: relative;

	}





	/*header*/


	header{
		position: fixed;

		top: 0;
		left: 0;

		width: 100%;
		background: rgba(255,255,255,.0);

		z-index: 10;

		padding:13px 10px;

		transition: all .3s ease-in-out;

	}
	header.fixed{
		padding:13px 10px;
		top: 0;
		left: 0;
		width: 100%;
		background: rgba(255,255,255,0);

		border-radius: 50px;
		box-shadow: 0 0 20px rgba(0,0,0,0);
	}

	header section{
		padding:0 0 0;

		align-items: center;

		width:100%;
		margin: 0 auto;
		transition: all .3s ease-in-out;

		position: relative;


	}
	header section > .headContact{
		display: none;
	}
	header.fixed section{
		padding:0 0 0;
		width:100%;
	}

	header section .headLang{
		position: fixed;
		right: 65px;
		top: 12px;

		display: flex;
		flex-wrap: wrap;
		width: 80px;
	}
	header section .headLang a{
		display: block;
		font-size: 11px;
		padding: 8px 14px 8px 14px;
		border-radius: 30px;
	}
	header section{

	}
	header.fixed section{
		width: 100%;
	}


	header nav{
		position: fixed;
		top: 0;
		right: 0;
		background: #AD0429;
		padding: 75px 30px;
		width: 96vw;
		height: auto;
		display: none;
		
		transition: all .3s ease-in-out;
		border-bottom-left-radius: 40px;

	}
	header.fixed nav{
		background: #AD0429;
		border-radius: 0;
		border-bottom-left-radius: 40px;
		box-shadow: none;
		padding: 75px 30px;
	}
	
	header nav .headContact{
		position: static;
		right: inherit;
		top: inherit;


		padding: 20px 0 0 0;
		text-align: center
		
	}
	.headContact a{

		display: inline-block;
		padding: 10px 50px 10px 30px;

		background: #fff url("../../images/arrow_r.png") no-repeat right 25px center;
		background-size: 21px 18px;

		border: 2px solid #AD0429;

		color: #AD0429;

		border-radius: 50px;

		font-size: 16px;

		letter-spacing: .1em;

		font-weight: bold;
		
		width: 100%;
	}

	header nav > ul#header-menu{
		display: flex;

		gap:0 0;

		background: transparent;


		position: relative;
		
		
		border-top: none;
		
		padding: 0;
	}
	header nav > ul#header-menu > li{
		position: relative;
		z-index: 1;
		padding: 20px 0 10px;
		border-bottom: none;
		
		width: 50%;
	}
	header nav > ul#header-menu > li:nth-of-type(1){
		width: 100%;
	}
	li.submenu::after{
		content: "";
		display: none;
	}
	li.submenu.openmenu::after{
		transform: rotate(225deg) translateY(0%);

	}
	li.submenu:hover::after{
		top: 25px;
		right: 6px;
	}

	header nav > ul a,
	header nav > ul span{
		font-size: 14px;
		font-weight: 500;
		display: block;
		cursor: pointer;
		
		color: #fff;
	}
	header.fixed nav > ul#header-menu a, header.fixed nav > ul#header-menu span{
		color: #fff;
	}




	header nav > ul#header-menu .submenulist{
		display: block;
		position: relative;
		top: 0;
		left: 0;
		transform: translateX(0);
		box-shadow: 0 0 0 rgba(0,0,0,0);
		padding: 15px 0 0 0;
		background: transparent;
		border-radius: 0;
		z-index: 2;
	}
	header nav > ul#header-menu .submenulist li{
		margin-bottom: 15px;
		text-align: left;
		margin-left: 14px;
	}
	header nav > ul#header-menu .submenulist li a{
		white-space: nowrap;
		color: #fff;
		font-weight: 500;
	}


	header .logo{
		width: 20vw;
		text-align: center;
		transition: all .3s ease-in-out;
	}
	header.fixed .logo{
		width: 20vw;
	}
	header .logo a{
		display: block;
	}
	header .logo img{
		width: 100%;
		height: auto;
	}





	.hamburger {
		position: absolute;
		top: 0;
		right:0;
		cursor: pointer;
		width: 60px;
		height: 60px;
		z-index: 10;
		transition: all .3s ease-in-out;
		
		background: #AD0429;
		
		border-bottom-left-radius: 20px;
	}
	/*.hamburger:hover{
		transform:rotate(180deg) scale(1.5);
	}
	*/

	.hamburger span {
		/*3本の線を作る*/
		transition: all .3s;
		position: absolute;
		height: 2px;
		background-color: #AD0429;
		width:28px;
		z-index: 10;
		border-radius: 3px;
		left: 16px;
	}
	.hamburger span:nth-of-type(1) {
		/*上の線の位置*/
		top: 19px;
		background-color: #fff;
	}
	.hamburger span:nth-of-type(2) {
		/*下の線の位置*/
		top: 29px;
		background-color: #fff;
	}
	.hamburger span:nth-of-type(3) {
		/*下の線の位置*/
		top: 39px;
		background-color: #fff;
	}
	.hamburger.open span:nth-of-type(1) {
		/*openのとき、上の線を右斜めにする*/
		background-color: #fff;
		top: 30px;
		transform: rotate(-45deg);
	}
	.hamburger.open span:nth-of-type(2) {
		/*下の線を左斜めにする*/
		top: 30px;
		opacity: 0;
		background-color: #fff;
	}
	.hamburger.open span:nth-of-type(3) {
		/*下の線を左斜めにする*/
		top: 30px;
		background-color: #fff;
		transform: rotate(45deg);
	}







	/*wrap*/



	#wrap{
		width: 100%;
		padding: 0 0 0;
		margin: 0 auto;

	}

	body#home #wrap{
		width: 100%;
		padding: 0 0 0;
		margin: 0 auto;

	}

	/*homeCont*/


	.homeCont{
		z-index: 1;

		width: 100%;

		max-width: 100%;
		margin: 0 auto;
		padding: 0 0;


		position: relative;
	}



	#promotion{

		width: 100%;
		overflow: hidden;
		position: relative;

		background: #F0F7F6 url("../../images/promo/promo_bg.png") no-repeat 0 0;
		background-size: 100% auto;
		z-index: 1;

	}
	#promotion .inner{
		width:calc(100% - 20px);
		height: 100%;
		position: relative;
		padding: 130px 0 80px 0;
	}


	.promoMov {
	  position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		border-bottom-right-radius: 40px;
	}

	.promoMov video {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  min-width: 100%;
	  min-height: 100%;
	  transform: translate(-50%, -50%);
	  object-fit: cover;
	}

	#promotion .inner .promoRead{
		font-size: 10vw;
		position: relative;
		z-index: 1;

		padding: 0 0 0 40px;

		color: #fff;

		line-height: 160%;
		font-family: "M PLUS Rounded 1c", sans-serif;
		font-weight: 300;

		text-shadow: 2px 2px 5px rgba(0,0,0,.6);
	}

	#promotion .inner .promoRead2{
		font-size: 16px;
		position: relative;
		z-index: 1;

		padding: 10px 0 0 40px;

		color: #fff;

		line-height: 160%;
		text-shadow: 2px 2px 5px rgba(0,0,0,.6);
	}

	#promotion .inner .promoBtn{
		padding: 20px 0 0 40px;
		position: relative;
		z-index: 1;
	}

	.promoBtn a{
		display: inline-block;
		padding: 15px 50px 15px 20px;

		background: #AD0429 url("../../images/arrow_w.svg") no-repeat right 16px center;
		background-size: 16px 12px;

		color: #fff;

		border-radius: 30px;
		
		font-size: 14px;
	}



	.promoloopwrap {
	  width: 100%;

		position: absolute;
		bottom: 30px;
		left: 0;

	}

	.promolooptxt {
	  display: flex;
	  white-space: nowrap;
	  animation: marquee 20s linear infinite;
	}

	.promolooptxt span {
	  flex-shrink: 0;
	  padding-right: 0;
		font-size: 50px;
		font-weight: 200;
		letter-spacing: .3em;
		color: #B1B1B1;
		line-height: 100%;
	}

	/* 無限ループアニメーション */
	@keyframes marquee {
	  0% {
		transform: translateX(0%);
	  }
	  100% {
		transform: translateX(-50%);
	  }
	}



	
	
	
	
	


	/*homeCont*/


	.homeCont{
		z-index: 0;

		width: 100%;

		margin: 0 auto;


		position: relative;

	}




	/* h2 */

	.h2title{
		font-size: 20px;
		line-height: 180%;
		font-weight: 400;
		letter-spacing: .1em;
		margin-bottom: 30px;
		text-align: center;

		color: #000;

		position: relative;
	}
	.h2title span{
		display: inline-block;

		position: relative;
	}
	.h2title span::before{
		content: "";
		position: absolute;
		bottom: 10px;
		left: 0;
		width: 100%;
		height: 5px;
		border-radius: 10px;
		opacity: .15;
		background: #0053C7;
	}

	.h2title.h2title1{
		position: relative;
		padding-top: 40px;
		margin-bottom: 30px;
	}
	.h2title.h2title1::before{
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 92px;
		height: 9px;
		background: url("../../images/title_bg_01.png") no-repeat 0 0;
		background-size: 92px 9px;
	}

	.h2title.h2title2{

		font-size: 24px;
	}
	.h2title.h2title2 span{
		color: #AD0429;
	}
	.h2title.h2title2 span::before{
		content: "";
		position: absolute;
		bottom: 10px;
		left: 0;
		width: 100%;
		height: 5px;
		border-radius: 10px;
		opacity: .15;
		background: #0053C7;
	}


	.h2title.h2title3{

		margin-bottom: 0;
		letter-spacing: .1em;
		font-size: 20px;
		font-weight: 500;
	}
	.h2title.h2title3 span{
		color: #AD0429;
		font-size: 53px;
	}
	.h2title.h2title3 span::before{
		display: none;
	}
	.h2titleBtmtxt{
		font-size: 16px;
		text-align: center;
		letter-spacing: .1em;

		margin-bottom: 20px;
	}
	.h2titleBtmtxt span{
		color: #AD0429;
	}



	.h2title.h2title4{

		margin-bottom: 50px;
		letter-spacing: .1em;
		font-size: 22px;
		font-weight: 500;
	}
	.h2title.h2title4 span::before{
		display: none;
	}






	/* homeConcept */


	.homeContTop{
		padding: 50px 0;
		background: #F0F7F6 url("../../images/home/concept_case_top_bg.jpg") repeat-x center bottom;
		background-size: 800px auto;
		position: relative;
	}
	.homeContTop::after{
		content: "";
		position: absolute;
		bottom: -15px;
		left: 50%;
		transform: translate(-50%);
		background: url("../../images/home/concept_weve_icon1.png") no-repeat 0 0;
		background-size: 100%;
		width: 68px ;
		height: 38px;
		z-index: 1;
	}

	.homeContMdl{
		padding: 50px 0;
		background: #fff url("../../images/home/concept_case_btm_bg.jpg") repeat-x center bottom;
		background-size: 800px auto;
		position: relative;
	}
	.homeContMdl::after{
		content: "";
		position: absolute;
		bottom: -15px;
		left: 50%;
		transform: translate(-50%);
		background: url("../../images/home/concept_weve_icon1.png") no-repeat 0 0;
		background-size: 100%;
		width: 68px ;
		height: 38px;
		z-index: 1;
	}



	.homeContBtm{
		padding: 50px 0 30px;
		background: #F0F7F6 url("../../images/home/concept_case_top_bg.jpg") repeat-x center bottom;
		background-size: 800px auto;
		position: relative;
	}
	.homeContBtm.otherpage{
		padding: 50px 5% 30px;
		background: linear-gradient(#F6F6F6, #fff 50%);
	}

	.homeContAbout{
		padding: 60px 0 40px;
		background: #fff url("../../images/home/concept_case_btm_bg.jpg") repeat-x center bottom;
		background-size: 800px auto;
		position: relative;
	}




	#homeNews{
		padding: 70px 0 50px;
		background: #F0F7F6 url("../../images/home/concept_case_top_bg.jpg") repeat-x center bottom;
		background-size: 3200px auto;
		position: relative;
	}






	.homeConcept{
		display: flex;

		flex-wrap: wrap;

		width: 94%;

		max-width: 94%;
		min-width: 94%;

		margin: 0 auto;

		justify-content: space-between;
		
		gap: 40px 0;
	}

	.homeCases{
		width: 100%;
		border: 1px solid #707070;
		border-top-right-radius: 25px;
		border-top-left-radius: 25px;
		border-bottom-right-radius: 25px;
		padding: 20px 0;
		position: relative;
		
	}
	.caseIcon{
		position: absolute;
		padding: 0 10px;
		background: #F0F7F6;
		top: -14px;
		left: 50%;
		color: #003681;
		transform: translateX(-50%);
		font-size: 23px;
		letter-spacing: .2em;
		font-weight: bold;
	}
	.caseIcon span{
		font-size: 12px;
		display: inline-block;
		padding: 0 5px 0 0;
	}

	.homeCasesImg{
		margin-bottom: 10px;
	}
	.homeCasesImg img{
		width: 100%;
		height: auto;

	}
	.homeCasesTxt{
		font-size: 16px;
		text-align: center;
		line-height: 160%;
	}




	.homeCaseArea{
		display: flex;
		flex-wrap: wrap;

		align-items: flex-end;

		width: 94%;

		max-width: 94%;
		min-width: 94%;

		margin: 0 auto 40px;

		justify-content: space-between;


	}
	.homeCaseArea:nth-of-type(2n){
		flex-direction: row-reverse;
	}

	.homeCaseAreaImg{
		width: 100%;
		border-top-right-radius: 40px;
		border-bottom-left-radius: 40px;
		overflow: hidden;

		margin-left: 0;
		
		margin-bottom: 25px;

	}
	.homeCaseArea:nth-of-type(2n) .homeCaseAreaImg{
		margin-left: 0;
		margin-right: 0;
	}
	.homeCaseAreaImg img{
		width: 100%;
		height: auto;
	}
	.homeCaseAreaTxt{
		width:100%;
		display: flex;
		flex-wrap: wrap;
	}
	.caseTitleIcon{
		
		width: 90px;
		padding: 13px 0 0 34px;
		background: url("../../images/home/concept_light.png") no-repeat 0 0;
		background-size: 28px 48px;
		position: relative;
		display: block;
		font-size: 10px;
		margin-bottom: 0;
		color: #003681;
		letter-spacing: .2em;
		font-weight: bold;
	}
	.caseTitleIcon span{
		display: block;
		font-size: 20px;
		margin-top: 6px;
	}

	.caseTitleIcon::before{
		content: "";
		position: absolute;
		bottom: -7px;
		left: 0%;
		width: 70px;
		height: 8px;
		background: url("../../images/title_bg_01.png") no-repeat 0 0;
		background-size: 70px 8px;
	}
	.homeCaseAreaTxt h3{
		font-weight: bold;
		font-size: 20px;
		margin-bottom: 0;
		line-height: 140%;
		letter-spacing: .1em;
		
		width: calc(100% - 120px);
	}
	.homeCaseAreaTxt p{
		font-size: 15px;
		line-height: 180%;
		width: 100%;
		
		margin-top: 15px;
	}





	.homeBizArea{
		display: flex;
		flex-wrap: wrap;

		width: 94%;

		max-width: 94%;
		min-width: 94%;

		margin: 0 auto 70px;
		
		gap:30px 0px;

		justify-content: space-between;


	}

	.homeBizBox{
		width: 100%;
	}
	.homeBizImg{
		width: 100%;
		border-top-left-radius: 40px;
		border-bottom-right-radius: 40px;
		overflow: hidden;
		position: relative;

		margin-bottom: 20px;
		
		
	}
	.homeBizImg img{
		width: 100%;
		height: 250px;
		object-fit: cover;
		object-position: center top;
	}
	.homeBizImg div{
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		background: #F0F7F6;
		padding: 8px 14px 8px 0;
		line-height: 100%;
		font-size: 12px;
	}
	.homeBizImg div span{
		color: #AD0429;

	}


	.homeBizTxt{
	}
	.homeBizTxt h3{
		font-size: 22px;
		line-height: 100%;
		margin-bottom: 15px;
	}
	.homeBizTxt p{
		font-size: 16px;
		line-height: 160%;
		letter-spacing: .1em;
	}


	.homeBizBtn {
		text-align: center;
		margin-bottom: -40px;
		position: relative;
		z-index: 1;
	}
	.homeBizBtn a{
		display: inline-block;
		padding: 15px 60px 15px 30px;

		background: #AD0429 url("../../images/arrow_w.svg") no-repeat right 20px center;
		background-size: 16px 13px;

		color: #fff;

		border-radius: 50px;

		font-size: 18px;

		letter-spacing: .1em;
	}




	@keyframes infinity-scroll-left {
	from {
	  transform: translateX(0);
	}
	  to {
	  transform: translateX(-100%);
	}
	}

	.scroll-infinity{
		margin-bottom: 40px;
	}
	.scroll-infinity__wrap {
	  display: flex;
	  overflow: hidden;
	}
	.scroll-infinity__list {
	  display: flex;
	  list-style: none;
	  padding: 0
	}
	.scroll-infinity__list--left {
	  animation: infinity-scroll-left 50s infinite linear 0.5s both;
	}
	.scroll-infinity__item {
	  width: calc(100vw / 0.5);
	}
	.scroll-infinity__item>img {
	  width: 100%;
	}


	.homePartBtn {
		text-align: center;
		margin-bottom: 0;
		position: relative;
		z-index: 1;
	}
	.homePartBtn a{
		display: inline-block;
		padding: 15px 50px 15px 30px;

		background: #fff url("../../images/arrow_r.png") no-repeat right 15px center;
		background-size: 16px 13px;

		border: 2px solid #AD0429;

		color: #AD0429;

		border-radius: 50px;

		font-size: 16px;

		letter-spacing: .1em;

		font-weight: bold;
	}





	.homeNewsArea{
		display: block;
		flex-wrap: wrap;

		width: 94%;

		max-width: 94%;
		min-width: 94%;

		margin: 0 auto 70px;

		justify-content: space-between;

	}
	.homeNewsTitle{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding-bottom: 40px;
	}
	.homeNewsTitle h2{
		position: relative;
		font-size: 22px;
		padding: 0 0 15px 0;
		font-weight: 500;
	}
	.homeNewsTitle h2 span{
		font-size: 14px;
		display: block;
		margin-top: 10px;
		font-weight: 500;
	}
	.homeNewsTitle h2::before{
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 70px;
		height: 7px;
		background: url("../../images/title_bg_01.png") no-repeat 0 0;
		background-size: 70px 7px;
	}


	.homeNewsLists{
		width: 100%;
	}
	.homeNewsList{
		display: flex;
		flex-wrap: wrap;
		border-top: 1px solid #ccc;
	}
	.homeNewsList dt{
		width: 100%;
		border-bottom: none;
		padding: 30px 0 0 0;
		color: #AD0429;
		font-weight: 500;
	}
	.homeNewsList dd{
		width: 100%;
		border-bottom: 1px solid #ccc;
	}
	.homeNewsList dd a{
		display: block;
		padding: 20px 0 30px 0;
	}




	.newsBtn {
		text-align: left;
		margin-top: 30px;
	}
	.newsBtn a{
		display: inline-block;
		padding: 7px 40px 7px 15px;

		background: #888888 url("../../images/arrow_w.svg") no-repeat right 15px center;
		background-size: 12px 10px;

		color: #fff;

		border-radius: 50px;

		font-size: 12px;

		letter-spacing: .1em;

		font-weight: bold;
	}






	#footContact{
		display: block;
		flex-wrap: wrap;

		align-items: flex-end;

		width: 94%;

		max-width: 94%;
		min-width: 94%;

		margin: 0 auto 0;

		padding: 40px 0 40px;

		justify-content: space-between;

		position: relative;

	}

	.footContactpage{
		background: url("../../images/bg_foot.png") repeat-x center top;
		background-size: 100% auto;
		padding: 60px 0 0 0;
	}
	.footContactpage #footContact{
		margin: 0 auto 0;
	}

	.contactImg{
		width:100%;
		margin-bottom: 20px;
	}
	.contactImg img{
		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
		overflow: hidden;
		width: 100%;
		height: auto;
		display: block;
	}
	.contactTxt{
		width:100%;
	}

	.contactTxt h2{
		position: relative;
		font-size: 22px;
		padding: 0 0 30px 0;
		font-weight: 500;
		letter-spacing: .1em;
	}
	.contactTxt h2 span{
		font-size: 14px;
		display: block;
		margin-top: 10px;
		font-weight: 500;
	}
	.contactTxt h3{
		position: relative;
		font-size: 11px;
		padding: 0 0 10px 0;
		font-weight: 500;
	}
	.contactTxt p{
		font-size: 16px;
		line-height: 160%;
	}
	.contactTxt p span{
		font-size: 11px;
	}
	.footcontactBtn {
		text-align: center;
		margin-top: 20px;
		position: relative;
		z-index: 1;
	}
	.footcontactBtn a{
		display: inline-block;
		padding: 15px 50px 15px 30px;

		background: #fff url("../../images/arrow_r.png") no-repeat right 25px center;
		background-size: 16px 13px;

		border: 2px solid #AD0429;

		color: #AD0429;

		border-radius: 50px;

		font-size: 14px;

		letter-spacing: .1em;

		font-weight: bold;
	}


	/*pageCont*/



	.pageCont{
		z-index: 1;

		width: calc(100% - 20px);

		margin: -40px 0 50px 20px;
		padding:50px 30px 30px 30px;

		max-width: calc(100% - 20px);
		min-width: calc(100% - 20px);

		min-height: 440px;

		position: relative;

		background: #fff;

		border-radius: 0;
		border-top-left-radius: 40px;
		
		



	}



	.pageTitle{
		background: #ccc url("../../images/pagetitlejpg.jpg") no-repeat 0 0;
		background-size: cover;

		padding: 100px 40px;

		margin-right: 0;

		border-bottom-right-radius: 0;
		text-align: left;
	}
	.pageTitle::after{
		background: linear-gradient(-0deg, rgba(0,0,0,.0) 50%, rgba(0,0,0,.1) 100%);
		z-index: 0;
	}

	.parentTitle{
		color: #fff;
		font-weight: 500;
		letter-spacing: .2em;
		padding: 0 0 20px 0;
		margin-bottom: 20px;
		background: url("../../images/pagetitle_wave.png") no-repeat left bottom;
		background-size: 60px 7px;
	}

	.h1title{
		font-size: 11px;
		color: #fff;
	}
	.h1title h1{
		font-size: 30px;
		padding: 0 0 20px;
		color: #fff;
		font-weight: 500;
		letter-spacing: .2em;
	}
	.h1title span{
		font-size: 16px;
		color: #fff;
		font-weight: 500;
		letter-spacing: .2em;
	}











	p.pageTxt{
		line-height: 180%;
		font-size: 16px;
	}




	/*会社案内　メッセージ*/

	.messageTop{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;

		margin-bottom: 50px;
	}
	.messageL{
		width: 100%
	}
	.messageL img{
		width: 100%;
		height: auto;
		border-top-left-radius: 40px;
		border-bottom-right-radius: 40px;
		display: block;
	}

	.messageR{
		width: 100%
	}


	.messageTxt{
		font-size: 16px;
		line-height: 180%;
		padding-top: 10px;
	}
	.messageBtm{
		margin-top: 50px;
		text-align: right;
		font-size: 16px;
		font-weight: bold;
	}
	.messageBtm span{
		display: block;
		font-size: 14px;
		margin-bottom: 10px;
	}

	/*会社概要　役員一覧*/

	.officerLists{
		width: 100%;
		margin: 0 auto;
		
		padding-top: 0;
	}
	.officerList{
		width: 100%;

		padding: 20px 0;
		border-bottom: 1px solid rgba(0,0,0,.3);
	}

	.officerListImg{
		width: 100%;
		text-align: center;
	}
	.officerListImg img{
		width: 70%;
		height: auto;
		border-top-left-radius: 20px;
		border-bottom-right-radius: 20px;
	}

	.officerListTxt{
		width: 100%;
	}

	.officerListName{
		font-size: 24px;
		margin-bottom: 0;
		padding-top: 10px;
		font-weight: bold;
		
		text-align: center;
		
		width: 100%;
	}
	.officerListName span{
		font-size: 13px;
		display: block;
	}
	.officerListName span.kana{
		margin-top: 10px;
		font-size: 11px;
		font-weight: normal;
		margin-left: 0;
	}


	ul.officerListHiostory{
		width: 100%;
		
		border-top: 1px dashed rgba(0,0,0,.3);
		padding-top: 20px;
	}
	ul.officerListHiostory li{
		margin-bottom: 5px;
		line-height: 160%;
		font-size: 15px;

	}
	ul.officerListHiostory li span{
		
		width: 90px;
		padding-right: 0;
		padding-bottom: 5px;
		font-weight: bold;
	}
	ul.officerListHiostory li p{
		width: calc(100% - 100px);
		padding-right: 0;
		padding-bottom: 5px;
		font-weight: normal;
	}





	/*会社概要　沿革*/

	.historyLists{
		width: 100%;
	}
	.historyLists li {
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 20px 0;
	}
	.historyLists li::before {
		position: absolute;
		top: 29px;
		left: 76px;
		content: "";
		display: block;
		width: 9px;
		height: 9px;
		background-color: #AD0429;
		border-radius: 50%;
	}
	.historyLists li::after {
		position: absolute;
		top: 29px;
		left: 80px;
		content: "";
		display: block;
		width: 1px;
		height: calc(100% + 1px);
		background-color: #AD0429;
		z-index: 2;
	}
	.historyLists li:nth-last-child(1)::after {
		position: absolute;
		top: 29px;
		left: 80px;
		content: "";
		display: block;
		width: 1px;
		height: calc(100% + 1px);
		background: linear-gradient(0, #ffffff, #AD0429);
		z-index: 2;

	}



	.historyLists li p {
		width: 80px;
		font-size: 15px;
		line-height: 180%;
	}

	.historyLists li div.historyListTxt {
		width: calc(100% -  100px);
		font-size: 15px;
		line-height: 180%;
	}
	.historyLists li div.historyListTxt span{
		display: block;
		margin-bottom: 6px;
	}




	/*会社概要　パートナー一覧*/

	.partnerLists{

	}
	ul.partnerList{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		border-left: 1px solid #ddd;
		border-top: 1px solid #ddd;

	}
	ul.partnerList li{
		padding: 15px 10px 12px;
		text-align: left;
		font-weight: bold;

		font-size: 16px;

		line-height: 160%;

		width:100%;

		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}
	.lastlists{
		padding: 30px 0;
		text-align: left;
		font-size: 16px;

	}



	/*事業案内　*/

	.businessIndexLists{
	}

	.businessIndexList{
		display: flex;
		flex-wrap: wrap;

		justify-content: space-between;

		align-items: center;

		margin-bottom: 50px;
	}
	.businessIndexList:nth-of-type(2n){
		flex-direction:row;
	}
	.businessIndexList:nth-last-child(1){
		margin-bottom: 0;

	}
	.businessIndexImg{
		width: 100%;
	}
	.businessIndexImg img{
		width: 100%;
		height: auto;
		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
	}

	.businessIndexTxt{
		width: 100%;
		padding-left: 0;
		padding-top: 20px
	}

	.businessIndexTxt .businessIndexTitleTop {
		margin-bottom: 8px;
	}
	.businessIndexTxt .businessIndexTitleTop span{
		font-size: 11px;
		display: inline-block;

		background: #003681;

		color: #fff;
		padding: 5px 15px 6px 15px;
		line-height: 100%;

	}
	.businessIndexTxt .businessIndexTitle{
		font-size: 28px;
		margin-bottom: 20px;
	}

	.businessIndexTxt p{
		margin-bottom: 20px;
		line-height: 160%;
		
		font-size: 15px
	}

	.businessIndexTxt .businessIndexBtn{
		text-align: left;
	}

	.businessIndexTxt .businessIndexBtn a {
		display: inline-block;
		padding: 11px 45px 11px 20px;
		background: #fff url(../../images/arrow_r.png) no-repeat right 15px center;
		background-size: 18px 16px;
		border: 2px solid #AD0429;
		color: #AD0429;
		border-radius: 50px;
		font-size: 15px;
		letter-spacing: .1em;
		font-weight: bold;
	}



	/*事業案内　国内事業*/



	.domesticTop{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;

		margin-bottom: 40px;
	}
	.domesticL{
		width: 100%
	}
	.domesticL img{
		width: 100%;
		height: auto;
		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
		display: block;
	}

	.domesticR{
		width: 100%
	}


	.domesticTxt{
		font-size: 15px;
		line-height: 180%;
		padding-top: 10px;
	}

	.domesticCont{
		display: flex;
		flex-wrap: wrap;

		justify-content: space-between;

		margin-bottom: 40px;
	}
	.domesticContImg{
		width: 100%;
		margin-top: 15px;
		text-align: center;
	}
	.domesticContImg img{
		width: 70%;
		height: auto;
		border-top-left-radius: 20px;
		border-bottom-right-radius: 20px;
	}
	.domesticContTxt{
		width: 100%;
	}
	.domesticContTxt .domesticContTxtBox{
		/*border: 1px solid #707070;
		border-radius: 30px;

		padding: 30px;*/

		line-height: 180%;
		font-size: 16px;
	}



	/*事業案内　輸出事業*/


	.exportTxtTop{
		font-size: 16px;
		line-height: 180%;

		margin-bottom: 40px;
	}


	.exportList{

	}




	.exportList{
		border-top-left-radius: 40px;
		border-bottom-right-radius: 40px;

		border: 1px solid rgba(0,0,0,.3);
		padding: 20px 20px;
		display: flex;
		flex-wrap: wrap;

		justify-content: space-between;

		align-items: center;

		margin-bottom: 60px;

		position: relative;
	}

	.exportList::after {
		content: "";
		position: absolute;
		display: block;
		width: 24px;
		height: 24px;
		bottom: -40px;
		left: 50%;
		border-right: 2px solid #003681;
		border-bottom: 2px solid #003681;
		transform: rotate(45deg) translateX(-50%);
		transition: all .2s ease-in-out;
	}
	.exportList:nth-last-child(1)::after {
		display: none;
	}

	.exportListImg{
		width: 100%;
	}
	.exportListImg img{
		width: 100%;
		height: auto;
		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
	}

	.exportListTxt{
		width: 100%;
		padding-left: 0;
		padding-top: 15px;
	}
	.exportListTxt h3{
		font-size: 20px;
		font-weight: 500;
	}
	.exportListTxt .exportTitleTop {
		margin-bottom: 8px;
	}

	.exportListTxt .exportTitleTop span{
		font-size: 11px;
		display: inline-block;

		background: #003681;

		color: #fff;
		padding: 5px 15px 6px 15px;
		line-height: 100%;

	}




	/*事業案内　輸入事業*/




	.inportTop{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;

		margin-bottom: 40px;
	}
	.inportL{
		width: 100%
	}
	.inportL img{
		width: 100%;
		height: auto;
		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
		display: block;
	}

	.inportR{
		width: 100%
	}


	.inportTxt{
		font-size: 16px;
		line-height: 180%;
		padding-top: 10px;
	}



	.importItems{
		display: flex;
		flex-wrap: wrap;

		justify-content: flex-start;

		gap:20px 3%;

	}

	.importItem{
		width: 48.5%;
		padding: 10px;

		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
		border: 1px solid #ccc;

	}
	.importItemImg{
		padding: 10px 10px 0 10px;
	}

	.importItemImg img{
		width: 100%;
		height: auto;
		border-radius: 15px;

	}
	.importItem h3{
		text-align: left;
		font-weight: 400;
		padding-top: 5px;

		line-height: 140%;
		font-size: 13px;
		
		letter-spacing: 0;
		
		

	}



	/*事業案内　倉庫事業*/


	.stockTxtTop{
		font-size: 16px;
		line-height: 180%;

		margin-bottom: 40px;
	}


	.stockList{
		display: flex;
		flex-wrap: wrap;

		justify-content: space-between;

		margin-bottom: 40px;
	}

	.stockListImg{
		display: block;

		width: 100%;
		
		margin-bottom: 10px;

	}
	.stockListImg img{
		width: 100%;
		height: auto;
		border-top-left-radius: 20px;
		border-bottom-right-radius: 20px;
	}

	.stockListTxt{
		width: 100%;

		font-size: 15px;
		line-height: 160%;
	}
	.stockListTxt2{
		width: 100%;

		font-size: 15px;
		line-height: 160%;
	}

	.contBox:nth-of-type(2n) .stockList{
		flex-direction: row;
	}






	/*会社案内*/

	.profileIndexLists{
		display: flex;
		flex-wrap: wrap;

		justify-content: flex-start;
		gap:20px 0;
	}
	.profileIndexList{
		width: 100%;

		padding: 20px 20px 10px;

		border: 1px solid #ddd;
		border-top-left-radius: 20px;
		border-bottom-right-radius: 20px;
	}
	.profileIndexList a{
		display: block;
	}

	.profileIndexImg{
		margin-bottom: 10px;
	}
	.profileIndexImg img{
		width: 100%;
		height: 150px;
		border-top-left-radius: 10px;
		border-bottom-right-radius: 10px;
		object-fit: cover;
		
		
	}
	.profileIndexList h2{
		margin-bottom: 0;
		font-weight: 700;
		letter-spacing: .1em;
		text-align: left;

		font-size: 16px;
	}

	.profileIndexBtn {
		text-align: right;
		margin-top: -18px;
	}
	.profileIndexBtn span{
		display: inline-block;
		padding: 10px 45px 10px 20px;
		background: #fff url(../../images/arrow_r.png) no-repeat right 0 center;
		background-size: 16px 12px;
		color: #AD0429;
		border-radius: 50px;
		font-size: 16px;
		letter-spacing: .1em;
		font-weight: bold;
	}





	.pageread{
		font-size: 16px;
		margin-bottom:50px;
		text-align: center;
		font-weight: 700;
		color: #000;
		line-height: 160%;
	}
	.pageread.readS{
		font-size: 14px;
		line-height: 170%;
	}


	



	/*お知らせ*/


	.newsLists{
		width: 100%;
		margin: 0 auto;

		padding-top: 20px;
	}
	.newsList{
		display: flex;
		flex-wrap: wrap;
		border-top: 1px solid #ccc;
	}
	.newsList dt{
		width: 100%;
		border-bottom: none;
		padding: 20px 0 0;
		color: #AD0429;
		font-weight: 500;
	}
	.newsList dd{
		width: 100%;
		border-bottom: 1px solid #ccc;
		font-size: 15px;
	}
	.newsList dd a{
		display: block;
		padding: 10px 0 20px;
		background: #fff url(../../images/arrow_r.png) no-repeat right 0 center;
		background-size: 18px 15px;
		font-size: 15px;
	}

	.newsDetail{
		width: 100%;
		margin: 0 auto 20px;

		padding: 20px 0 20px;
		border-bottom: 1px solid #ddd;


	}

	.newsDetailTitle{
		font-size: 20px;
		text-align: left;

		padding:0 0 20px 0;
		font-weight: 500;
		line-height: 160%;
	}


	.newsDetailDate{
		font-size: 10px;
		text-align: right;

		padding:0 0 20px 0;
	}


	.newsDetailBody{
		font-size: 15px;
		text-align: left;

		padding:0 0 20px 0;
		line-height: 180%;
	}


	.backList{
		text-align: center;
	}

	.backList a{
		display: inline-block;
		padding: 10px 20px 10px 45px;
		background: #fff url(../../images/arrow_back.png) no-repeat left 20px center;
		background-size: 14px 12px;
		border: 2px solid #AD0429;
		color: #AD0429;
		border-radius: 50px;
		font-size: 14px;
		letter-spacing: .1em;
		font-weight: bold;
	}



	/*アクセス*/


	.accessTxtTop{
		font-size: 16px;
		line-height: 180%;

		margin-bottom: 40px;
	}


	.accessList{
		display: flex;
		flex-wrap: wrap;

		justify-content: space-between;

		margin-bottom: 40px;
	}

	.accessListImg{
		display: block;

		width: 100%;
		
		margin-bottom: 10px;

	}
	.accessListImg img{
		width: 100%;
		height: 200px;
		border-top-left-radius: 20px;
		border-bottom-right-radius: 20px;
		object-fit: cover;
	}

	.accessListTxt{
		width: 100%;

		font-size: 15px;
		line-height: 160%;
	}

	
	.accessListTxt .accessTxtTitle{
		margin-bottom: 6px;
		text-align: left;
	}
	.accessListTxt .accessTxtTitle span{
		font-size: 10px;
		display: inline-block;
		background: #003681;
		color: #fff;
		padding: 5px 15px 6px 15px;
		line-height: 100%;
	}
	.accessListTxt .accessTxtBody{
		font-size: 15px;
		line-height: 160%;
	}

	.accessListMap{
		width: 100%;
		height: 200px;
		margin-top: 30px;
	}
	.accessListMap iframe{
		width: 100%;
		height: 100%;

	}

	
	.contBox:nth-of-type(2n) .accessList{
		flex-direction: row;
	}

	
	
	
	
	/*汎用パーツ*/



	.contBox{
		margin-bottom: 40px;
	}

	
	


	.contBox p.contTxt{
		font-size: 15px;
		line-height: 160%;
		margin-bottom: 30px;
	}

	.contBox p.contTxt.philosophyRead{
		font-size: 36px;
		font-family: serif;
	}
	
	
	.contBox ul.contUL{
		margin-bottom: 30px;
		margin-left: 1.2em;
	}
	.contBox ul.contUL li{
		margin-bottom: 7px;
		line-height: 150%;
		list-style-type: disc;
	}


	.contBox ol.contOL{
		margin-bottom: 30px;
		margin-left: 1.2em;
	}
	.contBox ol.contOL li{
		margin-bottom: 5px;
		line-height: 150%;
		list-style-type: decimal;
	}


	.contBox p.txtR{
		font-size: 15px;
		line-height: 160%;
		margin-bottom: 30px;
		text-align: right;
	}

	.privacytable{
		margin-bottom: 20px;
	}
	.privacytable table{
		border-left: 1px solid #ccc;
		border-top: 1px solid #ccc;
	}


	.privacytable table tr th,
	.privacytable table tr td{
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		padding: 10px;
		line-height: 140%;
		font-size: 14px;
	}
	.privacytable table tr th{
		background: #eee;
	}




	h2.conth2{
		position: relative;
		font-size: 22px;
		font-weight: 400;
		padding: 30px 0 20px 0;
		letter-spacing: .05em;
		line-height: 130%;
	}
	h2.conth2::before{
		content: "";
		position: absolute;
		background: url("../../images/h2title_line.png") no-repeat 0 0;
		background-size: 100% auto;

		width: 111px;
		height: 8px;

		top: 0;
		left: -37px;
	}

	h3.conth3{
		position: relative;
		font-size: 22px;
		font-weight: 400;
		padding: 0 0 25px 0;
		letter-spacing: .14em;
	}








	.chart_01{
		width: 100%;
		margin: 0 auto;
	}
	.chart_01.w100{
		width: 100%;

	}



	.chart_01 table{
		padding: 0 0 0 0;
		margin: 0;

		border-top: none;

		display: block;
	}
	.chart_01 table tbody{
		display: block;
	}
	.chart_01 table tr{
		display: block;

		margin: 0 0 4px;
		padding: 0 0 4px;

		border-bottom: 1px solid rgba(0,0,0,.3);
	}

	.chart_01 table th,
	.chart_01 table td{
		font-size: 15px;
		line-height: 180%;
		display: block;
	}
	.chart_01 table th{
		border-right: none;
		width: 100%;
		color: #003681;
		text-align: left;
		padding: 10px 0 0;
	}

	.chart_01 table td{
		width: 100%;
		padding: 5px 0 10px
	}









	/*recruit*/
	.recruitImg{
		position: relative;
		margin-bottom: 60px
	}
	.recruitImg01-01{
		width: 60%;
	}
	.flexBox .flexM .recruitImg01-01 img{
		width: 100%;
		height: auto;
		border-radius: 30px;
		display: block;
	}
	.recruitImg02-01{
		width: 60%;
		margin-left: 40%;
	}
	.flexBox .flexM .recruitImg02-01 img{
		width: 100%;
		height: auto;
		border-radius: 30px;
		display: block;
	}

	.recruitImg01-02{
		position: absolute;
		right: 0;
		top: 40%;
		width: 45%;
	}
	.flexBox .flexM .recruitImg01-02 img{
		width: 100%;
		height: auto;
		border-radius: 30px;
		display: block;
	}

	.recruitImg02-02{
		position: absolute;
		left: 0;
		top: 40%;
		width: 45%;
	}
	.flexBox .flexM .recruitImg02-02 img{
		width: 100%;
		height: auto;
		border-radius: 30px;
		display: block;
	}

	h3.titleH3_rec{
		color: #000;
		font-size: 20px;
		text-align: left;
		line-height: 120%;

		position: relative;

		margin-bottom: 5px;
	}

	h3.titleH3_rec span{
		font-size: 14px;
	}


	.recruitTxt{
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 20px;
	}

	.recruitTxt dt{
		width: 100px;
		margin-bottom: 20px;
		font-size: 13px;
		text-align: center;
		line-height: 100%;
	}
	.recruitTxt dt span{
		display: block;
		background: #fff;
		padding: 6px 0;
		border-radius: 30px;
	}
	.recruitTxt dd{
		width: calc(100% - 100px);
		margin-bottom: 20px;
		font-size: 13px;
		line-height: 150%;
		padding-left: 14px;
		text-align: left;
	}

	.recruitArticle{
		margin-bottom: 80px;
	}

	


	/*contact*/

	


	.contactTxtTopBox{
		border-top-left-radius: 30px;
		border-bottom-right-radius: 30px;
		border: 1px solid #ddd;

		padding: 0 0 0 0 ;

		overflow: hidden;
		
		margin-bottom: 30px;

	}
	.contactTxtTopBoxTitle{
		padding: 15px 20px 15px 20px;
		background: #AD0429;

		color: #fff;

		font-size: 18px;
	}
	.contactTxtTopBox p{
		padding: 15px 20px 15px 20px;

		line-height: 160%;
		font-size: 15px;
	}

	.contactTxtTopBox ul{
		padding: 0 20px 0 20px;
		display: flex;

		flex-wrap: wrap;


	}
	.contactTxtTopBox ul li{
		margin-bottom: 16px;
		line-height: 120%;
		width: 100%;
		font-size: 24px;
		font-weight: bold;
	}
	.contactTxtTopBox ul li span{
		font-weight: normal;
		display: block;
		padding-right: 6px;
		font-size: 14px;
		margin-bottom: 3px;
		padding: 0 0 2px 8px;
		border-left: 3px solid #AD0429;

		line-height: 104%;

	}
	
	


	
	.contactTxtTop{
		font-size: 16px;
		line-height: 180%;

		margin-bottom: 40px;
	}
	.contactTxtTop span{
		font-size: 14px;
		line-height: 160%;
	}

	

	.completeTxt{
		font-size: 15px;
		line-height: 180%;


		width: 100%;
		margin: 0 auto 30px;
	}
	.completeTxt span{
		font-size: 20px;
		line-height: 160%;
		font-weight: bold;
		margin-bottom: 30px;
		display: block;
		text-align: center;
		color: #003681;
	}



	
	
	.contactFlow{

		width: 80%;
		margin: 0 auto 40px;
	}
	.contactFlow img{
		width: 100%;
		height: auto;
	}

	.formchart{
		margin-bottom: 30px;
	}
	.formchart dl{
		display: block;
		flex-wrap: wrap;
	}
	.formchart dt{
		padding: 10px 0 0;
		width: 100%;
		font-weight: 700;
		line-height: 160%;
		margin-bottom: 10px;
		border-bottom: none;
		font-size: 15px;
	}
	.formchart dd{
		width: 100%;
		margin-bottom: 10px;
		padding: 0 0 10px;
		font-size: 15px;
	}


	.select {
	  display: block;
	  position: relative;
	  vertical-align: middle;

	}

	select {
		appearance: none;
		width: 100%;
		padding: 10px;

		border: 2px solid #AD0429;
		outline: 0;
		background: #fff;
		background-image: none;
		box-shadow: none;
		text-indent: 0.01px;
		text-overflow: ellipsis;
		cursor: pointer;

		font-weight: bold;
		font-size: 15px;
		border-radius: 30px;
	}

	.select::before {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 26px;
		width: 0;
		height: 0;
		border-width: 10px 6px 0 6px;
		border-style: solid;
		border-color: #AD0429 transparent transparent transparent;
		content: "";
		pointer-events: none;
	}

	select::-ms-expand {
	  display: none;
	}

	.formchart input[type=text]{
		border: 2px solid #AD0429;
		font-weight: bold;
		font-size: 15px;
		border-radius: 30px;
		width: 100%;
		padding: 10px;
	}

	.formchart .forms{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.formchart .forms .formS{
		width: 48%;
	}

	.formchart .forms .formM{
		width: 60%;
		margin-bottom: 10px;
	}
	.formchart .forms .formTxt{
		width: 40%;
		padding: 8px 0 0;
		font-weight: 700;
		line-height: 160%;
		margin-bottom: 10px;
	}

	.submitBtn{
		text-align: center;
	}
	.submitBtn input[type="submit"]{
		display: inline-block;
		padding: 10px 35px 10px 15px;
		background: #fff url(../../images/arrow_r.png) no-repeat right 10px center;
		background-size: 18px 16px;
		border: 2px solid #AD0429;
		color: #AD0429;
		border-radius: 50px;
		font-size: 14px;
		letter-spacing: .1em;
		font-weight: bold;
		line-height: 100%;
	}

	.submitBtn input[type="button"],
	.submitBtn a.backform{
		display: inline-block;
		padding: 10px 15px 10px 35px;
		background: #fff url(../../images/arrow_back.png) no-repeat left 10px center;
		background-size: 18px 16px;
		border: 2px solid #AD0429;
		color: #AD0429;
		border-radius: 50px;
		font-size: 14px;
		letter-spacing: .1em;
		font-weight: bold;
		line-height: 100%;
		margin-right: 20px;
	}





	/*footer*/

	footer{
		background: #AD0429;
		border-top-left-radius: 70px;
		margin-left: 20px;
	}
	footer section{
		padding: 50px 20px 70px 20px;
	}

	.footerTop{
		border-bottom: 1px solid rgba(255,2550,255,.6);

		display: block;
		flex-wrap: wrap;

		justify-content: space-between;

		align-items: center;

		padding: 0 0 40px;
	}
	.footerLogo{
		width: 100%;
		text-align: center;
		margin-bottom: 15px;
	}
	.footerLogo img{
		width: 90px;
		height: auto;
	}
	.footerCopy{
		width: 100%;
		color: #fff;
		line-height: 150%;
		text-align: center;
		font-size: 12px;
	}
	.footerCopy span{
		display: none;
	}

	.footerSpCopy{
		border-top: 1px solid rgba(255,2550,255,.6);

		display: block;
		flex-wrap: wrap;

		justify-content: space-between;

		align-items: center;

		padding:40px 0 40px ;
		color: #fff;
		line-height: 150%;
		text-align: center;
		font-size: 9px;
	}

	.footermarc{
		width: 130px;
	}
	.footermarc img{
		width: 100%;
		height: auto;
	}

	.footerBtm{
		padding: 40px 0 40px;
	}
	.footMenu{
		display: flex;
		flex-wrap: wrap;

		justify-content: space-between;
	}

	.footAddress{
		width: 100%;
		color: #fff;
		font-size: 14px;
		line-height: 160%;
		margin-bottom: 30px;

	}
	.footAddress a {
		color:#fff;
		text-decoration:none;
    }
	.footMenu > ul{
		display: flex;
		flex-wrap: wrap;
		width: 50%;
	}
	.footMenu ul li{
		width: 100%;
		margin-bottom: 15px;
		font-weight: 500;
	}
	.footMenu > ul.footListTop{
		width: 100%;
	}
	.footMenu ul.footListTop li.fmTitle{
		width: 50%;
	}
	.footMenu > ul.footListBtm{
		width: 100%;
	}
	.footMenu ul.footListBtm li.fmTitle{
		width: 100%;
	}


	.footMenu ul li span,
	.footMenu ul li a{
		color: #fff;
		font-size: 14px;
	}

	.footMenu ul li.fmTitle span,
	.footMenu ul li.fmTitle a{
		font-weight: 500;
	}

	.footMenu ul li.fmTitle ul{
		margin-top: 15px;
		margin-bottom: 0;
		font-weight: 500;
		margin-left: 10px;
	}


}




/*contact form 7*/
.wpcf7-not-valid-tip{
	
	display: block;
	margin-top: 10px;
	font-size: 14px;
}

.pageCont .wpcf7 form .wpcf7-response-output{
	border-color: #AD0429;
	border-radius: 10px;
	padding: 15px;
}




.homeBizBox {
  position: relative;
}
.homeBizBox a {
  position: absolute;
  inset: 0;          /* top:0; right:0; bottom:0; left:0 と同じ */
  z-index: 3;
  text-indent: -9999px; /* テキストは隠す（aria-labelで代替） */
}
.homeBizBox > * {
  position: relative;
  z-index: 2;
}



.profileIndexList {
  position: relative;
}
.profileIndexList a {
  position: absolute;
  inset: 0;          /* top:0; right:0; bottom:0; left:0 と同じ */
  z-index: 3;
  text-indent: -9999px; /* テキストは隠す（aria-labelで代替） */
}
.profileIndexList > * {
  position: relative;
  z-index: 2;
}