@charset "utf-8";
/*----------------
[1]common
[2]headerContainer
[3]sideContainer
[4]footerContainer
[5]Container
[6]topContainer
[7]subContainer
[8]other
------------------ */

/* **********************************************************************************************
[1]common
************************************************************************************************ */
html{
	margin: 0;
	padding: 0;
}
body{
	line-height: 1.5;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 15px;
	font-family: 'Noto Sans JP', sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.5px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	min-width: 940px;
}
header {
	width: 100%;
	height: 68px;
	z-index: 99999999997;
	position: absolute;
	top: 0px;
	left: 0;
	/* background-color: #FFF; */
	box-sizing: border-box;
}


header.fixed {
	width: 100%;
	height: 68px;
	z-index: 99999999997;
	position: fixed;
	background-color: rgba(255,255,255,0.6);
	top: 0px;
	left: 0;
	box-sizing: border-box;
	/* box-shadow: 1px 2px 2px rgba(0,0,0,0.1); */
}




#trns{
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999999999999;
	background-image: url(images/logoB.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 211px 163px;
	background-color: #FFF;
}
#wrapper {
	width: 100%;
	position: relative;
	overflow: hidden;
}

/* clear
----------------------------------------------- */
.clear { clear: both; }
.clearfix:after,
.blogEntry p:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix,
.blogEntry p { min-height: 1px; }
* html .clearfix,
* html .blogEntry p {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* a 
----------------------------------------------- */
a,a:link { text-decoration: none; }
a img, img {
	border: none;
	line-height: normal;
	vertical-align: top;
}

/* img 
----------------------------------------------- */
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;
}
.imgText {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.object-fit-img {
	object-fit: cover;
	object-position: 50% 50%;
	font-family: 'object-fit: cover; object-position: 50% 50%;'
}

/* slide
----------------------------------------------- */
#topContent {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
}

#sliderbox {
	position: absolute;
	width: 100%;
	overflow: hidden;
	height: 100vh;
	padding: 0;
	top: 0px;
	box-sizing: border-box;
}

#sliderbox li.box {
	position: relative;
	width: 100%;
	overflow: hidden;
}
#sliderbox li figure{
	position: relative;
	width: 100%;
	overflow: hidden;
	height: 100vh;
}

#sliderbox li figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.blackBg {
	display: block;
	background-color: rgba(0,0,0,0.5);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99999999;
}

.mainTxt {
	color: #000;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -180px;
	margin-left: -214px;
	z-index: 999999999;
	width: 428px;
	height: 297px;
	text-align: center;
}

.mainTxt h1 {
	width: 428px;
	height: 297px;
	background-image: url(images/logo.png);
	background-position: left top;
	background-repeat: no-repeat;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}

.bx-wrapper .bx-prev {
	left: 20px;
	background-image: url(images/arrow-bigleft.png);
	background-position: 0 center;
	background-repeat: no-repeat;
	transition: left .2s;
}

.bx-wrapper .bx-next {
	right: 20px;
	background-image: url(images/arrow-bigright.png);
	background-position: 0 center;
	background-repeat: no-repeat;
	transition: right .2s;
}

.bx-wrapper .bx-prev:hover {
	left: 10px;
	transition: left .5s;
}

.bx-wrapper .bx-next:hover {
	right: 10px;
	transition: right .2s;
}

.scroll {
	position: absolute;
	bottom: 88px;
	right: 68px;
	color: #fff;
	width: 7px;
	height: 60px;
	font-size: 10px;
	z-index: 99999999;
	margin-top: 0px;
	font-family: 'Ubuntu', sans-serif;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.scroll a{
	color: #fff;
	position: relative;
	width: 7px;
	height: 60px;
	display: block;
	box-sizing: border-box;
}
.scroll a:after {
	position: absolute;
	background-image: url(images/icon-yajiScroll.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	width: 7px;
	height: 14px;
	left: 0px;
	right:0;
	margin: 0 auto;
	top: 55px;
	content: "";
	transition:top .3s;
}
.scroll a:hover:after{
	 top: 70px;
	 transition:top .3s;
}

.scroll a:before {
	position: absolute;
	background-color: #FFF;
	width: 1px;
	height: 40px;
	right: 6px;
	top: 30px;
	content: "";
	transition:height .3s;
}

.scroll a:hover:before{
	 height: 55px;
	 transition:height .3s;
}

.newsBox {
	position: absolute;
	bottom: 68px;
	left: 68px;
	z-index: 99999999;
	color: #FFF;
}

.newsBox h2 {
	font-family: 'Ubuntu', sans-serif;
	float: left;
	font-size: 18px;
	font-weight: 700;
	padding: 5px 15px 5px 0;
	border-right: 1px solid #FFF;
}

.newsBox dl {
	float: left;
	padding-left: 15px;
}
.newsBox dt {
	float: left;
	font-family: 'Ubuntu', sans-serif;
	font-size: 12px;
	padding: 8px 15px 8px 0;
}
.newsBox dd {
	float: left;
	font-size: 14px;
	padding: 5px 0px;
}
.newsBox dd a{
	color: #FFF;
	display: block;
}



/* **********************************************************************************************
[2]headerContainer
************************************************************************************************ */

.headerMain {position: fixed; top: 0; left: 0; width: 100%; }

header h1 {
	position: relative;
	left: 68px;
	width: 77px;
	height: 59px;
	top: -59px;
	text-align: center;
	z-index: 999999999;
}
header.fixed h1,
#subContent h1 {top: 4.5px;}


header h1 a {
	display: block;
	background-repeat: no-repeat;
	background-position: left top;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	position:relative;
	width: 77px;
	height: 59px;
	background-size: contain;
	margin: 0 auto 0;
	box-sizing: border-box;
	background-image: url(images/logo-scroll.png);
	transition: opacity .3s;
}
.headerMainNav {
	width: 100%;
	position: absolute;
	top:50px;
	right: 68px;
}
.fixed .headerMainNav,
#subContent .headerMainNav {top:4.5px;}


.headerMainNav ul{text-align: right;}
.headerMainNav li{display: inline-block; margin: 0px 0; font-size: 14px; line-height: 1.3; text-align: center; font-weight: 300;}
.headerMainNav li a{
	text-align: center;
	color: #fff;
	position: relative;
	padding: 20px 5px;
	box-sizing: border-box;
	display: block;
	height: 59px;
	font-family: 'Ubuntu', sans-serif;
	letter-spacing: 0.5px;
}

.fixed .headerMainNav li a,
#subContent .headerMainNav li a{color: #000;}
.headerMainNav li a:hover{color: #fff;}
.fixed .headerMainNav li a:hover,
#subContent .headerMainNav li a:hover{color: #000;}
.headerMainNav li a:after{
	background-color: #fff;
	position: absolute;
	bottom: 15px;
	left: 0;
	right: 0;
	margin: 0 auto;
	height: 1px;
	width: calc(100% - 10px);
	content: "";
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.headerMainNav li a:hover:after{
	transform-origin: left top;
	transform: scale(1, 1);
}
.fixed .headerMainNav li a:after,
#subContent .headerMainNav li a:after{
	background-color: #000;
}
.headerMainNav li:nth-last-of-type(1),
.headerMainNav li:nth-last-of-type(4){margin-left: 20px; margin-right: 0;}
.headerMainNav li:nth-last-of-type(1) a{
	border: 2px solid #FFF;
	padding: 10px 10px 10px 33px;
	box-sizing: border-box;
	height: auto;
	background-repeat: no-repeat;
	background-position: 10px center;
	background-image: url(images/icon-onlineW.png);
	background-size: 23px 23px;
}

.headerMainNav li:nth-last-of-type(2) a,
.headerMainNav li:nth-last-of-type(3) a,
.headerMainNav li:nth-last-of-type(4) a{
	top: 8px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	width: 23px;
	height: 23px;
	background-repeat: no-repeat;
	background-position: center center;
	padding:0;
}

.headerMainNav li:nth-last-of-type(2) a{
	background-image: url(images/icon-lineW.png);
}
.headerMainNav li:nth-last-of-type(3) a{
	background-image: url(images/icon-instaW.png);
}
.headerMainNav li:nth-last-of-type(4) a{
	background-image: url(images/icon-twitterW.png);
}
.fixed .headerMainNav li:nth-last-of-type(2) a,
#subContent .headerMainNav li:nth-last-of-type(2) a{
	background-image: url(images/icon-lineB.png);
}
.fixed .headerMainNav li:nth-last-of-type(3) a,
#subContent .headerMainNav li:nth-last-of-type(3) a{
	background-image: url(images/icon-instaB.png);
}
.fixed .headerMainNav li:nth-last-of-type(4) a,
#subContent .headerMainNav li:nth-last-of-type(4) a{
	background-image: url(images/icon-twitterB.png);
}
.fixed .headerMainNav li:nth-last-of-type(1) a,
#subContent .headerMainNav li:nth-last-of-type(1) a{
	border: 2px solid #000;
	background-image: url(images/icon-onlineB.png);
}


.headerMainNav li:nth-last-of-type(1) a:hover:after,
.headerMainNav li:nth-last-of-type(2) a:hover:after,
.headerMainNav li:nth-last-of-type(3) a:hover:after,
.headerMainNav li:nth-last-of-type(4) a:hover:after{
	transform: scale(0, 1);
}


#_btn {
  overflow: hidden;
  background-color: #000;
  height: 56px;
  width: 56px;
  position: fixed;
  top: 19px;
  right: 80px;
  z-index: 9999999999999;
  box-sizing:  border-box;
  border-radius: 50%;
  transition: background-color .3s;
  display: none;
}

#_btn:hover {
  background-color: #727171;
  transition: background-color .3s;
}

#_btn_nav {
  float: left;
  cursor: pointer;
  position: relative;
}
#nav_open {
  position: absolute;
  z-index: 2;
  top: 0;
  height: 56px;
  width: 56px;
  transition:width .3s, height .3s;
}
#nav_close {
  position: relative;
  z-index: 2;
  top:  0px;
  height: 56px;
  width: 56px;
  transition:width .3s, height .3s;
}

#fadeLayer {
  position:absolute;
  top:0px;
  left:0px;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0.6);
  visibility:hidden;
  z-index: 99999999998;
  cursor: pointer;
}
#menu {
  	position: relative;
  	z-index: 0;
  	top: 10px;
	margin: 0px auto 0;
 	height: 24px;
	width: 24px;
    cursor: pointer;
    font-family: 'Ubuntu', sans-serif;
	transition:top .3s;
}
#menu:after {
	content:"MENU";
	color: #fff;
	font-size: 10px;
	position: absolute;
	bottom: -13px;
	left: -2px;
}
#menu.active:after {
	content:"CLOSE";
	color: #fff;
	font-size: 10px;
	bottom: -13px;
	left: -4px;
} 
#menu .bar {
    display: inline-block;
    width: 24px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    left: 50%;
	margin-left: -12px;
    transition: .15s ease-in-out;
}
#bar01 {top: 4px;}
#bar02 {top: 10px;}
#bar03 {top: 16px;}
.active #bar01 {
    top: 10px;
    transform: rotate(45deg);
}
.active #bar02 {width: 0;}
.active #bar03 {
    top: 10px;
    transform: rotate(-45deg);
}

/* **********************************************************************************************
[3]sideContainer
************************************************************************************************ */
.headerNav {
	width: 100%;
	height: 100%;
	position: fixed;
	top: -100%;
	left: 0px;
	z-index: 99999999999;
	padding: 0px 0 0;
	box-sizing: border-box;
	background-color: #000;
	/* overflow: auto; */
	overflow: hidden;
	display: none;
}


    .humber {
        height: 100%;
        overflow: auto;
        -ms-overflow-style: none;    /* IE, Edge 対応 */
        scrollbar-width: none;       /* Firefox 対応 */
    }
    .humber::-webkit-scrollbar {  /* Chrome, Safari 対応 */
        display:none;
    }

.navlogo {
	position: relative;
	margin: 0 0 20px;
	width: 268px;
	height:67px;
	left: 80px;
	top: 13.5px;
	z-index: 9999999999;
}
.navlogo a {
	display: block;
	background-repeat: no-repeat;
	background-position: left top;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	position:relative;
	width: 268px;
	height:67px;
	margin: 0 auto 0;
	box-sizing: border-box;
	background-image: url(images/logo-nav.png);
	background-size: contain;
	transition: opacity .3s;
}

.navBox {
	position: absolute;
	top: 50%;
	left:50%;
	margin-left: -385px;
	margin-top: -223px;
	width: 770px;
	height: 446px;
}

.navBox a{color: #fff;}

.navBox ul.side001 li,
.navBox ul.side002 li {
	float: left;
	width: 50%;
	padding: 0 10px;
	box-sizing: border-box;
}


.navBox ul.side001 li a{
	padding: 10px 20px;
	box-sizing: border-box;
	font-size: 30px;
	width: 100%;
	display: block;
	background-image: url(images/icon-arrowWhite.png);
	background-size: 14px 16px;
	background-position: left center;
	background-repeat: no-repeat;
	font-weight: 700;
	transition: color .3s;
}
.navBox ul.side001 li a:hover {
  color: #727171;
  transition: color .3s;
}
.side002 {margin-top: 40px;}

.side002 li a{
	color: #000;
	display: block;
	font-family: 'Ubuntu', sans-serif;
	position: relative;
	font-size: 25px;
	padding: 10px 20px;
	box-sizing: border-box;
	background-color: #fff;
	border-radius: 80px;
	font-weight: 700;
	text-align: center;
	transition: background-color .3s;
}
.navBox ul.side002 li a:hover {
  background-color: #727171;
  transition: background-color .3s;
}

.side002 li a span {
	display: inline-block;
	padding-top: 5px;
}
.side002 li a img{vertical-align: top;}

/* **********************************************************************************************
[4]footerContainer
************************************************************************************************ */
footer {
	position: relative;
	width: 100%;
	background-color: #000;
	padding: 20px 80px;
	box-sizing:  border-box;
	background-size: cover;
	color: #fff;
}

.footerCompany h2 {
	width: 114px;
	height: 84px;
	margin: 0px auto 0;
	box-sizing: border-box;
}
.footerCompany h2 a{
	display: block;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	background-image: url(images/logo-footer.png);
	background-repeat: no-repeat;
	width: 114px;
	height: 84px;
}


/* copyright
----------------------------------------------- */
.copyright {
	font-size: 10px;
	text-align: center;
	padding: 0px 0 0px;
	position: relative;
	box-sizing: border-box;
	font-family: 'Ubuntu', sans-serif;
	color: #fff;
}

/* pageTop
----------------------------------------------- */
#pageTop {
	position: fixed;
	bottom: 20px;
	right: 68px;
	color: #FFF;
	width: 50px;
	height: 50px;
	text-align: center;
	font-size: 10px;
	z-index: 999999999;
}
#pageTop a{
	color: #fff;
	position: relative;
	width: 50px;
	height: 50px;
	padding-top: 25px;
	display: block;
	box-sizing: border-box;
	font-family: 'Ubuntu', sans-serif;
	background-color: #000;
	border-radius: 50%;
}
#pageTop a:after {
	position: absolute;
	background-image: url(images/pagetop.png);
	background-repeat: no-repeat;
	background-size: 25px 17px;
	width: 25px;
	height: 17px;
	top: 12px;
	left: 0;
	right: 0;
	margin: 0 auto;
	content: "";
	transition: top .3s;
}

#pageTop a:hover:after {
	top: 8px;
	transition: top .3s;
}



/* **********************************************************************************************
[5]Container
************************************************************************************************ */
#container {
	width: 100%;
	box-sizing: border-box;
	padding: 0;
	position: relative;
	z-index:99999999;
}

#container section{position: relative;}

/* Ttl
----------------------------------------------- */

.mainTtlM {
	position: relative;
	width: 100%;
	font-size: 60px;
	color: #000;
	font-weight: 700;
	line-height: 0.9;
	margin-bottom: 40px;
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	font-family: 'Ubuntu', sans-serif;
}
.mainTtlM span {
	font-size: 18px;
	display: block;
	font-weight: 200;
	color: #a0a0a0;
	margin-top: 20px;
}
.mainTtlS {
	position: relative;
	width: 100%;
	font-size: 40px;
	color: #000;
	font-weight: 700;
	line-height: 0.9;
	margin-bottom: 40px;
	display: inline-block;
	box-sizing: border-box;
	position: relative;
	font-family: 'Ubuntu', sans-serif;
}
.mainTtlS span {
	font-size: 16px;
	display: block;
	font-weight: 200;
	color: #d2d2d2;
	margin-top: 10px;
}


/* Btn
----------------------------------------------- */
.btn {text-align: left; margin: 30px auto 0;}
.btn a {
	font-size: 16px;
	font-weight: 400;
	display: inline-block;
	box-sizing: border-box;
	padding: 13px 0;
	cursor: pointer;
	color: #000;
	position: relative;
	box-shadow: none;
	border: 1px solid #000;
	width: 80%;
	text-align: center;
	font-family: 'Ubuntu', sans-serif;
}
.btn a:after {
	position: absolute;
	top:20px;
	right: -17px;
	background-image: url(images/icon-yajiB.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	width: 17px;
	height: 7px;
	content:"";
	transition: right .3s;
}
.btn a:before {
	position: absolute;
	top:26px;
	right: -17px;
	background-color: #000;
	width: 37px;
	height: 1px;
	content:"";
	transition: width .3s,right .3s;
}
.btn a:hover:after {
	right: -23px;
	transition: right .3s;
}
.btn a:hover:before {
	width: 43px;
	right: -23px;
	transition: width .3s,right .3s;
}


a .btnS {
	font-size: 14px;
	font-weight: 400;
	display: inline-block;
	box-sizing: border-box;
	padding: 8px 0;
	cursor: pointer;
	color: #fff;
	position: relative;
	box-shadow: none;
	border: 1px solid #fff;
	width: 80%;
	text-align: center;
	font-family: 'Ubuntu', sans-serif;
}
a .btnS:after {
	position: absolute;
	top:14px;
	right: -17px;
	background-image: url(images/icon-yajiW.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	width: 17px;
	height: 7px;
	content:"";
	transition: right .3s;
}
a .btnS:before {
	position: absolute;
	top:20px;
	right: -17px;
	background-color: #fff;
	width: 37px;
	height: 1px;
	content:"";
	transition: width .3s,right .3s;
}
a:hover .btnS:after {
	right: -23px;
	transition: right .3s;
}
a:hover .btnS:before {
	width: 43px;
	right: -23px;
	transition: width .3s,right .3s;
}

/* **********************************************************************************************
[6]topContainer
************************************************************************************************ */
.top001 {margin-top:1px;}

.historyBox {}
.historytxt {float: right; width: 33.3%; padding: 60px 0px 60px 40px; box-sizing: border-box;}
.historyimg {float: left; width: 66.66%; }
.historyimg figure {
	position: relative;
	width: 100%;
	height: 520px;
	overflow: hidden;
}


.instaBox h2{ text-align: center; margin-bottom: 20px;}
.sbi_item {float: left; width: 25%; padding: 3px; box-sizing: border-box; }
.sbi_photo_wrap {position: relative;}
.icon {
position: absolute;
top: 5px;
right: 5px;
width: 8%;
height: 8%;
}

.bnrBox li {float: left; width: 33.333%;}
.bnrBox li div.bnrSubBox,
.bnrBox li div.bnrSubBox figure {
position: relative;
width: 100%;
height: 400px;
overflow: hidden;
}

.historyimg figure img,
.bnrBox li div.bnrSubBox figure img,
.commonImg img{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bnrBox li div.bnrSubBox a{
	display: block;
	position: relative;
	width: 100%;
	height: 400px;
	overflow: hidden;
	box-sizing: border-box;

}
.bnrTxt {
	position: absolute;
	width: 100%;
	height: 100vh;
	padding: 45px 40px;
	top:0;
	left:0;
	box-sizing: border-box;
	z-index: 9999999999;
	color: #FFF;
	text-align: center;
}

.bnrTxt .mainTtlS {color: #FFF;}

.btnSBox {
position: absolute;
top: 310px;
width: 240px;
left: 50%;
margin-left: -120px;
}

.top005 .mainTtlM,
#contact002 .mainTtlM,
#contact003 .mainTtlM {text-align: center;}

.infobox li {float: left; width: 25%; box-sizing: border-box; padding: 0 40px; position: relative;}
.infobox li div.flowBox {opacity: 0; position: relative; text-align: center; box-sizing: border-box; }
.infobox li.fadeIn div.flowBox{
animation: border_anim2 1s ease forwards;
}
.infobox li h3 {font-size: 20px; font-weight: 700; margin: 8px 0;}
.infobox li p {text-align: left; margin: 0 auto 10px; padding: 5px; box-sizing: border-box; font-size: 14px;}

.infobox li div.flowBox div.flowImg {
	border: 1px solid #a0a0a0;
	border-radius: 50%;
	width: 100%;
	/* height: 100%; */
	padding-top: 100%;
	position: relative;
	box-sizing: border-box;
	/* padding: 13% 0; */
}

.infobox li div.flowBox figure {
position: absolute;
top:50%;
left: 50%;
/* width: 100%;
height: 83.91959%;
margin-left: -50%;
margin-top: -34%; */
width: 199px;
height: 167px;
margin-left: -99.5px;
margin-top: -83.5px;
}

.infobox li div.flowBox div.flowImg p {
	background-color: #a0a0a0;
	color: #FFF;
	font-size: 18px;
	font-family: 'Ubuntu', sans-serif;
	font-weight: 700;
	line-height: 1.0;
	font-style: italic;
	width: 80px;
	height: 80px;
	text-align: center;
	border-radius: 50%;
	position: absolute;
	top: -10px;
	left: -5px;
	padding-top: 15px;
	box-sizing: border-box;
}

.infobox li div.flowBox div.flowImg p span{
	font-size: 30px;
	display: block;
	text-align: center;
}

.infobox li:after {
	position:absolute;
	top: 35%;
	left:-12px;
	background-image:url(images/flow-yajirushi.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 24px;
	height: 39px;
	content:"";
	opacity: 0;
}

.infobox li.fadeIn:after{
animation: border_anim 1s ease forwards;
}

.infobox li:first-child:after {background: none;}



@keyframes border_anim {
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

@keyframes border_anim2 {
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

.infobox li.fadeIn.flow01:after {animation-delay: 0.5s;}
.infobox li.fadeIn.flow02:after {animation-delay: 1.5s;}
.infobox li.fadeIn.flow03:after {animation-delay: 2.5s;}
.infobox li.fadeIn.flow04:after {animation-delay: 3.5s;}
.infobox li.fadeIn.flow05:after {animation-delay: 4.5s;}
.infobox li.fadeIn.flow01 div.flowBox {animation-delay: 0s;}
.infobox li.fadeIn.flow02 div.flowBox {animation-delay: 2s;}
.infobox li.fadeIn.flow03 div.flowBox {animation-delay: 3s;}
.infobox li.fadeIn.flow04 div.flowBox {animation-delay: 4s;}
.infobox li.fadeIn.flow05 div.flowBox {animation-delay: 5s;}



.first-v2 {
    position: relative;
    background: url(images/bgTop2.jpg);
    background-size: cover;
    background-position: center top;
    height:400px;
    width: 100%;
    /* padding-top: unquote("min(100vh,26.82%)");
    padding-top: 53.6%; */
    overflow: hidden;
}
.first-v3 {
    position: relative;
    background: url(images/bgOrder.jpg);
    background-size: cover;
    background-position: center top;
    height:400px;
    width: 100%;
    /* padding-top: unquote("min(100vh,26.82%)");
    padding-top: 53.6%; */
    overflow: hidden;
}

.first-v4 {
    position: relative;
    background: url(images/bgAboutUs.jpg);
    background-size: cover;
    background-position: center top;
    height:400px;
    width: 100%;
    /* padding-top: unquote("min(100vh,26.82%)");
    padding-top: 53.6%; */
    overflow: hidden;
}

.first-v5 {
    position: relative;
    background: url(images/bgContact.jpg);
    background-size: cover;
    background-position: center top;
    height:400px;
    width: 100%;
    /* padding-top: unquote("min(100vh,26.82%)");
    padding-top: 53.6%; */
    overflow: hidden;
}



/* **********************************************************************************************
[7]subContainer
************************************************************************************************ */
/* common
---------------------------------------------- */
.commonBox,
.commonImg {
position: relative;
width: 100%;
height: 563px;
overflow: hidden;
}

.common {
	padding: 80px 0;
	box-siaing: border-box;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	color: #FFF;
	z-index: 99999999;
}

.common .mainTtlM {color: #FFF;}
.common ul {text-align: center; }
.common ul li {display: inline-block; text-align: center; padding: 20px; box-sizing: borde-box; vertical-align: top;}
.common ul li img {display: block; text-align: center; margin: 0 auto;}
.common ul li div {
border: 2px solid #FFF;
width: 215px;
height: 215px;
box-sizing: border-box;
padding: 13px;
font-size: 24px;
font-weight: 700;
line-height: 1.0;
}
.common ul li:nth-of-type(1) div {
padding: 0px;
border: none;
font-family: 'Ubuntu', sans-serif;
}
.common ul li:nth-of-type(1) div span {font-size: 12px; display: block; font-weight: 200; font-family: 'Noto Sans JP', sans-serif;}
.common ul li:nth-of-type(1) a{border: 2px solid #FFF; width: 215px; height: 215px; color: #FFF; display: block; padding-top: 50px; box-sizing: border-box;}
.common ul li:nth-of-type(2) div {
background-color: #FFF;
color: #000;
font-family: 'Ubuntu', sans-serif;
}
.common ul li:nth-of-type(2) div span{font-size: 20px; display: inline-block; font-family: 'Noto Sans JP', sans-serif;}

.common ul li:nth-of-type(1) a:hover{
background-color: rgba(0,0,0,0.2);
}

.common ul li:nth-of-type(3) {display: none;}

.colorbox{
    /* position: relative;
    width: 80%;
    margin: 30px auto 30px; */
}
.colorbox div.color{
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background-color: #808080;
}
.colorbox img{
    display: block;
    width: 100%;
}

#subContent {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	background-color: #fafafa;
}

#subMain {
	text-align: center;
	width: 100%;
	position: absolute;
	top: 50%;
	margin-top: -20px;
}
#subMain h2{
	font-size: 70px;
	font-family: 'Ubuntu', sans-serif;
	font-weight: 700;
	line-height: 1.0;
}

#subMain h2.shopping{
	font-size: 30px;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 25px;
}

.pagelink {text-align: center; margin: 40px auto 0; }
.pagelink li{display: inline-block; padding: 0 10px 0 23px; box-sizing: border-box; position: relative; font-size: 13px; }
.pagelink li a {color: #717171; display: block; position: relative;}
.pagelink li:before {
	position: absolute;
	top:0;
	bottom:0;
	left: 0;
	background-color: #717171;
	width: 1px;
	height: 20px;
	content: "";
}
.pagelink li:first-child:before {background: none;}

.pagelink li a:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
    left: -8px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #717171;
    border-right: 1px solid #717171;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.historytxt p span {font-size: 12px;}
#order002 .historytxt,
#order004 .historytxt {padding: 0px 0px 0px 40px;}

#order003 .historytxt {float: left; width: 33.3%; padding: 0px 40px 0px 0px; box-sizing: border-box;}
#order003 .historyimg {float: right; width: 66.66%; }

.atention {display: block; width: 100%; margin-top: 20px;}
.mark {float: left; width: 15px;}
.marktext {float: left; width: calc(100% - 15px);}

.mark2 {float: left; width: 20px;}
.marktext2 {float: left; width: calc(100% - 20px);}

.table {
width: 100%;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
margin-bottom: 10px;
}

.table td,
.table th{
padding: 10px;
box-sizing: border-box;
border-bottom: 1px solid #ccc;
border-right: 1px solid #ccc;
}


.table th{background-color: #eee;}
.table td{background-color: #FFF;}


.table th span{
font-size: 10px;
display: inline-block;
}

.table.price001 th {text-align: center; font-weight: 700; line-height: 1.1; }
.table.price001 td {text-align: center; }
.table.price001 th.priceLeft { text-align: left;}

.table.price001.price002 th.priceLeft { width: 30%; }
.table.price001.price002 td { width: 35%; }

.priceRed {color: #F00;}
.priceBlue {color: #0249d9;}

.table.price001 td.priceBlue {background-color: #e8f6fd;}
.table.price001 th.priceBlue {background-color: #d9f1fd;}

.table.price001 td.priceRed {background-color: #fbe6e6;}
.table.price001 th.priceRed {background-color: #fccdcd;}

.table.commonT th {width: 200px;}
.table.commonT td {width: calc(100% - 200px);}


.table.commonT th span.attention {float: right; color: #F00;}
.table.commonT td a {display: block; color: #000;}

.subTtl {
font-size: 18px;
font-weight: 700;
margin-bottom: 5px;

}

.mt30 {margin-top: 30px;}
.messageTxt {text-align: center; font-size: 16px;}
.privacy {margin-top: 30px;}
.privacy dl {margin-bottom: 15px;}
.privacy dt{ font-weight: 700;}
.privacy dd {padding: 5px 20px; }

.btn input[type=submit],
.btn input[type=button]  {
	font-size: 16px;
	font-weight: 400;
	display: inline-block;
	box-sizing: border-box;
	padding: 13px 0;
	cursor: pointer;
	color: #000;
	position: relative;
	box-shadow: none;
	border: 1px solid #000;
	width: 280px;
	text-align: center;
	font-family: 'Ubuntu', sans-serif;
	background:none;
	transition: background .3s, color .3s;
}

.btn input[type=submit]:hover,
.btn input[type=button]:hover {
	transition: background .3s, color .3s;
	background: #000;
	color: #FFF;
}


.contactPageBtn {text-align: center; margin: 30px auto 0;}
.contactPageBtn .btn {text-align: center; margin-top: 10px;}

.telContact {text-align: center;}
.telContact li:nth-of-type(3) {display: none;}
.telContact li {display: inline-block; vertical-align: top; padding-right: 20px;}

.telContact li p {background-color: #eee; padding: 2px 5px; text-align: center; box-sizing: border-box; margin-top: 10px;}
.telContact li:nth-of-type(1) span,
.telContact li:nth-of-type(1) a {font-size: 80px; line-height: 1.1; font-weight: 700; font-family: 'Ubuntu', sans-serif; display: block;}

.telContact li:nth-of-type(1) p {margin-bottom: 10px;}
.telContact li:nth-of-type(2) img {width: 100px;}
.bloglist li {
padding: 20px;
box-sizing: border-box;
border-bottom: 1px solid #ccc;
}

.bloglist p {
font-weight: 700;
font-size: 16px;
width: 130px;
margin-right: 20px;
float: left;
}

.bloglist dl {
width: calc(100% - 150px);
padding-left: 40px;
box-sizing: border-box;
border-left: 1px solid #ccc;
float: left;
}

.bloglist dt {
font-weight: 700;
font-size: 16px;
margin-bottom: 10px;
}

.bloglist dd {
font-size: 13px;
}

.bloglist dd.btn {
text-align: right;
margin: 0;
}

.bloglist dd.btn a{
width: auto;
padding: 5px 40px;
}


.bloglist dd.btn a:after {
	top:10px;
}
.bloglist dd.btn a:before {
	top:16px;
}


.pager {
	text-align: center;
	margin-top: 30px;
}

.pager1 {
	text-align: center;
	margin: 30px auto 0;
	/* max-width: 1080px; */
	border-top: 1px dashed #ccc;
	padding-top:  20px;
}
.pager1 span,
.pager span,
.pager a{
	background-color: #eee;
	color: #000;
	cursor: pointer;
	padding: 5px 8px;
	font-size: 13px;
	letter-spacing: 0.5px;
	transition: background-color .3s;
}

.prev{ float: left; }
.next{ float: right; }
.pager span:hover,.pager1 span:hover,.pager a:hover{
	background-color: #ccc;
	transition: background-color .3s;
}

.catList div {
	float: left;
	width: 33.333%;
	padding: 20px;
	box-sizing: border-box;
	border-right: 1px solid #ccc;
}

.catList div:nth-of-type(3) {
	border-right: none;
}

.catList div h3 {
font-family: 'Ubuntu', sans-serif;
font-size: 20px;
font-weight: 700;
margin-bottom: 10px;
}

.catList div ul li {
margin: 2px auto;
}

.catList div ul li a{
display: block;
width: 100%;
background-color: #fff;
color: #000;
padding: 10px;
box-sizing: border-box;
font-size: 13px;
transition: background-color .3s;
}


.catList div ul li a:hover{
background-color: #ccc;
transition: background-color .3s;
}


.blogttl {
	font-weight: 700;
	text-align: center;
	font-size: 20px;
	margin-bottom: 10px;
}

.blogday {font-family: 'Ubuntu', sans-serif; font-size: 10px;text-align: center;margin-bottom: 10px;}
.blogcat {text-align: center; }
.blogcat a {display: inline-block; background-color: #000; color: #FFF; font-size: 12px; padding: 2px 5px; box-sizing: border-box; margin: 0 2px;}

.blogEntry {
	padding: 20px;
	box-sizing: border-box;
	margin-top: 10px;
	/* text-align: center; */
}
.blogEntry img { margin: 5px 0; text-align: center;}
.blogEntry img.imgcenter { width: 100%; }
.blogEntry img.imgleft { width: 40%; padding-right: 20px; box-sizing: border-box; float: left;}
.blogEntry img.imgright { width: 40%; padding-left: 20px; box-sizing: border-box; float: right;}

.blogEntry p{margin-top: 30px;}

.shoppingList {text-align: right;}

.shoppingList li {display: inline-block; margin-left: 5px;}
.shoppingList li.catBtn a {
display: block;
color: #000;
padding: 5px;
box-sizing: border-box;
border-bottom: 1px solid #ccc;
}
.shoppingList li.catBtn a span{
font-size: 10px;
display: inline-block;
color: #ccc;
margin-left: 15px;
font-family: 'Ubuntu', sans-serif;
}


.shoppingList li.cartBtn a {
display: block;
color: #000;
padding: 5px;
box-sizing: border-box;
border: 1px solid #000;
}

.shoppingListBox li {
float: left;
width: 33.333%;
padding: 20px;
box-sizing: border-box;
}

.shoppingListBox2 li {
float: left;
width: 25%;
padding: 20px;
box-sizing: border-box;
}


.shoppingListBox a figure,
.shoppingListBox2 a figure {
border: 1px solid #ccc;
margin-bottom: 5px;
position:relative;
width: 100%;
padding-top: 73.75%;
overflow: hidden;
}



.shoppingListBox a h3,
.shoppingListBox2 a h3 {color: #000; line-height: 1.3;}
.shoppingListBox a h3 span,
.shoppingListBox2 a h3 span{ font-size: 12px; color: #888; display: inline-block; margin-bottom: 3px;}

.shoppingListBox a p,
.shoppingListBox2 a p {color: #aaa; font-size: 18px; font-family: 'Ubuntu', sans-serif;}
.shoppingListBox a p span,
.shoppingListBox2 a p span{font-size: 10px; display: inline-block; font-family: 'Noto Sans JP', sans-serif;}

.cartSubBox {background-color: #FFF; padding: 15px; box-sizing: border-box; }
.cartSubBox dt { clear:both; float: left;  font-size: 13px; width: 80px; }
.cartSubBox dd { float: left; width: calc(100% - 80px); font-size: 13px;}
.cartSubBox dd.redTxt {color: #F00; font-size: 18px; line-height: 1.0;}

.cartB { border-bottom: 1px dashed #ccc; padding-bottom: 10px; margin-bottom: 10px;}
.cartSubBtn a {
	display: block;
	background-color: #000;
	color: #FFF;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	transition: background-color .3s;
}

.cartSubBtn a:hover {
	transition: background-color .3s;
	background-color: #666;
}



/* **********************************************************************************************
[7]shop
************************************************************************************************ */



.shopdetailBox { margin-top: 60px;}
.detailphotobloc { width: 55%; float: left; /* margin-bottom: 30px; */ }

div.detailphotobloc .bx-wrapper {
	position: relative;
	margin: 0 auto 10px;
	padding: 0;
	*zoom: 1;
}

div.detailphotobloc li {
	margin-bottom: 10px;
}

div.detailphotobloc .bx-wrapper li{
	position: relative;
	width: 100%;
	padding-top: 100%;
	overflow: hidden;

}

div.detailphotobloc figure img{
	width: 100%;
}
div.detailphotobloc figure{
	margin: 0 auto;
	text-align: center;
}
div.detailphotobloc figure img.v{
	width: 92.5%;
	margin: 0 auto;
	text-align: center;
}

div.detailphotobloc .bx-wrapper li img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: auto;
	height: 100%;
  object-position: center;
  font-family: 'object-fit: cover; object-position: center;'
}

div.detailphotobloc .bx-wrapper li img.h{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: auto;
  object-position: center;
  font-family: 'object-fit: cover; object-position: center;'
}

div.detailphotobloc .bx-wrapper li img.hv{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: auto;
	height: 100%;
  object-position: center;
  font-family: 'object-fit: cover; object-position: center;'
}


div.detailphotobloc ul.thumbnail li {
    float: left;
	display: inline;
    width: 20%;
	padding: 20% 0 0;
	position: relative;
	overflow: hidden;
	 box-sizing: border-box;
}

div.detailphotobloc ul.thumbnail li img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 95%;
	height: 95%;
  object-position: center;
  font-family: 'object-fit: cover; object-position: center;'
}

div.detailphotobloc ul.thumbnail li a.active,
div.detailphotobloc ul.thumbnail li a:hover{
opacity:0.6; filter: alpha(opacity=60); -ms-filter: "alpha( opacity=60 )";
}

div.detailphotobloc ul.thumbnail li:nth-of-type(4n) {
	margin-right: 0; 
}

.detailBox{ width: 45%; padding-left: 30px; box-sizing:  border-box; float: right; box-sizing: border-box; margin-bottom: 30px; }


.detailBox .cartBox{ background-color: #fafafa; padding: 20px; box-sizing: border-box; font-size: 14px;  margin-top: 20px; position:relative;}
.detailBox h2 { font-size: 30px; margin: 0px auto 10px; font-weight: 600; padding-bottom: 10px; line-height: 1.2; color: #000;}

.priceBox { font-size: 25px; margin-bottom: 2px; color: #999; margin-bottom: 30px;}
.priceBox span{ font-size: 10px;}
.priceBox {margin: 10px 0;}
.detailBox .btn { /* float: left; width: 60%; */ padding: 1px 0px; box-sizing: border-box; text-align: center; }
.detailBox .btn a{
	display: block;
	padding: 15px;
	width: 100%;
	background-color: #000;
	color: #FFF;
	text-align: center;
	font-weight: 500;
}
.detailBox .btn a:after,
.detailBox .btn a:before{ background:none;}

.detailBox .btn a:hover{ background-color: #666; }

.listTxt { font-size: 15px; margin: 30px auto; }

.listTxt span{
	font-size: 18px;
	display: block;
	font-weight: bold;
	margin-bottom: 10px;
}


.detailBox .cartBox p{ margin-bottom: 10px; }

.detailBox .cartBox ul{ margin-top: 0px;}
.detailBox .cartBox li { margin-bottom: 2px; color: #717171; }
.detailBox .cartBox li a{ color: #717171; font-size: 12px; }
.detailBox .cartBox li a:hover{ color: #2f4881; text-decoration: underline; }

.detailBox .cartBox .classlist li { color: #000; }
.detailBox .cartBox select {width: 100%;}
.detailBox .cartBox .cartStyle {width: 100%; text-align: right;}

.detailphotobloc .bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -5.5px;
	outline: 0;
	width: 7px;
	height: 11px;
	border:none;
	border-radius: 0px;
	z-index: 9997;
	text-indent: 100%;
	overflow:  hidden;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-size: 7px 11px;
	
}

.detailphotobloc .bx-wrapper .bx-controls-direction a:hover {
background-color: inherit;
}

.detailphotobloc .bx-wrapper .bx-prev {
	left: 10px;
	background-image: url(images/icon-prev.png);
	background-position: right center;
	transition: background-position .2s;
}

.detailphotobloc .bx-wrapper .bx-next {
	right: 10px;
	background-image: url(images/icon-next.png);
	background-position: left center;
	transition: background-position .2s;
}

.detailphotobloc .bx-wrapper .bx-prev:hover {
	background-position: right center;
	transition: background-position .5s;
}

.detailphotobloc .bx-wrapper .bx-next:hover {
	transition: background-position .5s;
	background-position: left center;
}


.soldout { color: #F00; font-weight:  bold;}



/* **********************************************************************************************
[8]other
************************************************************************************************ */
/* common
----------------------------------------------- */

.messageimg figure img,
.shoppingListBox a figure img,
.shoppingListBox2 a figure img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.morebox {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0);
transition: background-color .3s;
}

.shoppingListBox a:hover .morebox,
.shoppingListBox2 a:hover .morebox {
background-color: rgba(0,0,0,0.5);
transition: background-color .3s;
}

.morebox span{
font-size: 12px;
font-family: 'Ubuntu', sans-serif;
color: #FFF;
width: 100px;
height: 32px;
border: 1px solid #FFF;
position: absolute;
top:50%;
left: 50%;
margin-left: -50px;
margin-top: -16px;
text-align: center;
padding: 5px;
box-sizing: border-box;
}


header h1 a:hover,
footer dt a:hover,
.newsBox a:hover,
.footernav a:hover {opacity:0.7; filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70 )";}



/* **********************************************************************************************
[3]sideContainer
************************************************************************************************ */

/* btn
----------------------------------------------- */


/* form
----------------------------------------------- */
input[type=text],textarea,input[type=password] {
	background-color: #fff;
	padding: 8px;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #ddd;
	margin: 1px 0;
}
input.boxShort,input.box60 {width: 10%;}
input.box120 {width: 20%;}
input.box140 {width: 40%;}
input[type=text].keyBox {
	width:159px;
	border-top: none;
	border-left: none;
	border-right: none;
	font-size: 11px;
	color: #a0a0a0;
	font-family: 'Noto Sans JP', sans-serif;
}
input.boxMiddle,input.box380,input.box300 {width: 70%;}
input.boxLong {width: 100%;}
.box95,textarea.box380 {width: 100%;}
input[type=checkbox] {width: 25px; height: 25px; background-color: #fff; }
/* input[type=radio] {width: 25px; height: 25px; background-color: #fff; } */
.vertical-align input{
	vertical-align:middle;
}
select {
	-webkit-appearance:none;
	-moz-appearance:none;
	text-indent: .01px;
	text-overflow: "";
	appearance:none;
	width: auto;
	height: 40px;
	padding: 5px 20px 5px 5px;
	background-color: #fff;
	background-image: url(images/select.png);
	background-repeat: no-repeat;
	background-size: 6px 7px;
	background-position: right 5px center;
	cursor: pointer;
	border: 1px solid #ddd;
	margin: 0 5px 5px 0;
}
.detailshopping select { width: 150px; }
.selectV select {width: 20%;}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	select:not(:target) {
		padding-right:0;
		background-image: none;
	}
}
	textarea.kiyaku_text {
	height: 1000px;
	width:  100%;
	overflow: auto;
	
	}

/* font 
----------------------------------------------- */
.f10 { font-size: 10px; }
.f11 { font-size: 11px; }
.f12 { font-size: 12px; }
.f13 { font-size: 13px; }
.f14 { font-size: 14px; }
.f15 { font-size: 15px; }
.f16 { font-size: 16px; }
.f17 { font-size: 17px; }
.f18 { font-size: 18px; }
.f19 { font-size: 19px; }
.f20 { font-size: 20px; }
.f25 { font-size: 25px; }
.f30 { font-size: 30px; }
.f35 { font-size: 35px; }
.f40 { font-size: 40px; }
.f45 { font-size: 45px; }
.f50 { font-size: 50px; }
.f55 { font-size: 55px; }
.f60 { font-size: 60px; }
.f65 { font-size: 65px; }
.f70 { font-size: 70px; }
.txtC,.alignC { text-align: center; }
.txtR,.alignR { text-align: right; }
.txtL,.alignL { text-align: left; }
a.txtD { text-decoration: underline; color: #000; }

.box10 {
	width: 100%;
	/* max-width: 1580px; */
	margin: 0 auto;
	padding: 80px 8%;
	box-sizing: border-box;
	position: relative;
}

.box10N {
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: 80px 8%;
	box-sizing: border-box;
	position: relative;
}


.box10T {
	width: 100%;
	/* max-width: 1580px; */
	margin: 0 auto;
	padding: 80px 8% 0;
	box-sizing: border-box;
	position: relative;
}

@media all and (max-width: 1660px) {
.infobox li div.flowBox figure {
width: 159.2px;
height: 133.6px;
margin-left: -79.6px;
margin-top: -66.8px;
}
}


@media all and (max-width: 1460px) {
.infobox li {padding: 0 20px;}
}

@media all and (max-width: 1216px) {
.infobox li div.flowBox figure {
width: 139.3px;
height: 116.9px;
margin-left: -69.65px;
margin-top: -58.45px;
}
}

@media all and (max-width: 1148px) {
#order002 .historytxt,
#order003 .historytxt,
#order004 .historytxt,
#order002 .historyimg,
#order003 .historyimg,
#order004 .historyimg {float: none; width: 100%; padding: 0;}

#order002 .historytxt,
#order003 .historytxt,
#order004 .historytxt {margin-bottom: 20px;}

}



@media all and (max-width: 1088px) {
.infobox li div.flowBox figure {
width: 119.4px;
height: 100.2px;
margin-left: -59.7px;
margin-top: -50.1px;
}
.infobox li h3 {font-size: 17px;}
.infobox li div.flowBox div.flowImg p {
	width: 70px;
	height: 70px;
	padding-top: 10px;
}
.infobox li {padding: 0 15px;}
}


.posiR { position: relative; }
.pb80 { padding: 80px 0;}
.pb80t { padding-top: 80px; padding-bottom: 0; }
.pb80b { padding-bottom: 80px; padding-top: 0; }
.pb60 { padding: 60px 0;}
.pb30 { padding: 30px 0;}
.mb30 { margin-bottom: 30px; }
.mb10 { margin-bottom: 10px; }
.mt10 { margin-top: 10px; }
.gryTxt { color: #a0a0a0; }
.borderB { border-bottom: 1px dashed #e5e5e5; }
.borderR { border-right: 1px dashed #e5e5e5; }
.borderL { border-left: 1px dashed #e5e5e5; }
.fontB { font-weight: bold; }
.notoserifjp {font-family: 'Noto Serif JP', serif;}
.lora {font-family: 'Lora', serif;}
.notosansjp {font-family: 'Noto Sans JP', sans-serif;}
.asap {font-family: 'Asap', sans-serif;}
.ubuntu {font-family: 'Ubuntu', sans-serif;}


.bgGry {
	background-color: #f4f6f5;
}

:hover { transition:background-color .3s, color .3s, opacity .3s;}
.pcno { display: none; }



@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
