@charset "utf-8";

/*トップページ　メインイメージ　ズーム*/
@keyframes zoomin-bgimg {
	from {
		transform: scale(1.5,1.5)
	}
	to {
		transform: scale(1,1);
	}
}

/*トップページ　メインイメージ　コメント*/
@keyframes fadein-ttl {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


/*トップページ　スクロールアニメーション*/
@keyframes sdb2 {
  0% {
    transform: translate(0, 0);
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translate(0, 160px);
  }
}


/*************ローディング画面*************/
@-webkit-keyframes load1 {
	0%  {opacity: 0;}
	100%  {opacity: 1;}
}
@-ms-keyframes load1 {
	0%  {opacity: 0;}
	100%  {opacity: 1;}
}
@-moz-keyframes load1 {
	0%  {opacity: 0;}
	100%  {opacity: 1;}
}
@keyframes load1 {
	0%  {opacity: 0;}
	100%  {opacity: 1;}
}
/*ローディング画面*/
html{
	overflow-y:scroll;
}
/* ローディングの背景部分のCSS */
.loader{
	background:#fff;
	height:100%;
	left:0;
	position:fixed;
	top:0;
	width:100%;
	z-index:3000;
}




@media screen and (min-width: 1001px) ,print {
/*************************************
* 共通
*************************************/
.dsp-no-pc { display: none !important; }
section { position: relative; }
main {  }
#main-content { margin-left: 80px; }
.content-inner { width: 95%; margin: auto ; padding: 0 0 4rem 0; max-width: 1400px; height: 100%; }
.detail-inner { margin: 0 0 1.5rem 0; padding: 0; width: 100%; height: 100%; }
#pagetop { position: fixed; width: 45px; height: 30px; bottom: 30px; right: 20px; z-index: 500; }
#pagetop a:before {
	font-family: FontAwesome;
	content: '\f077';
	color: #b2b2b2;
	font-size: 45px;
	padding: 1px;
	display: inline-block;
}
.area-r { text-align: right; }
.area-l { text-align: left; }
.area-c { text-align: center; margin: auto; }
.tel-link-sp { pointer-events: none; }
.font-s { font-size: 0.8rem; line-height: 1.3rem }
/*フェードイン*/
.effect {
  -webkit-transition: 2s ease-in-out;
  -moz-transition: 2s ease-in-out;
  -o-transition: 2s ease-in-out;
  transition: 2s ease-in-out;
  opacity: 0;
  transform: translateX(-50px);
}
.effect-u {
  -webkit-transition: 2s ease-in-out;
  -moz-transition: 2s ease-in-out;
  -o-transition: 2s ease-in-out;
  transition: 2s ease-in-out;
  opacity: 0;
  transform: translateY(50px);
}
.fadein { opacity: 1; transform: translateX(0px); }
/* ローディングのアニメーション部分のCSS */
.loader-animation {
	width: 100%;
	position: absolute;
	height: 100%;;
	background-image: url("../img/svg/logo_y_b.svg");
	background-position: right 10% center;
	background-repeat: no-repeat;
	background-size: auto 38px;
	-webkit-animation:load1 3s ease-out infinite;
	animation:load1 3s ease-out infinite;  
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
/*************************************
* 見出し
*************************************/
.h2-01-area {
	width: 100%;
	padding: 25px 0 40px 0;
	background-color: #a7bfbf;
	color: #fff;
	text-align: center;
	margin-bottom: 3rem;
}
h2.h2-01 { font-size: 30px; line-height: 35px; letter-spacing: 0.1em; display: block; color: #fff; }
h2.h2-01 span { font-size: 13px; color: #fff; display: block; }
.h2-01-area:after {
	content: " ";
	width: 1px;
	background-color: #fff;
	height: 40px;
	position: absolute;
	left: 50%;
}
h4.h4-01 { font-size: 23px; padding-left: 12px; border-left: 5px solid #a7bfbf; margin-bottom: 0.8rem; }
h5.h5-01 { font-size: 1rem; line-height: 1.4rem; }
/*************************************
* テーブル
*************************************/
th {  }
.table-01 { margin-bottom: 1rem; border-top: 1px solid #ebebeb; width: 100%; }
.table-01 tr { border-bottom: 1px solid #ebebeb; display: inline-block; line-height: 1.5rem; padding-left: 2.5%; padding-right: 2.5%; width: 95%; }
.table-01 tr > * { padding: 10px 0 10px 0; }
.table-01 th { font-weight: bold; width: 20%; display: inline-block; }
.table-01 td { width: 70%; display: inline-block; margin-left: 5%; }
/*************************************
* リスト
*************************************/
ul.list-01, ul.list-01 li { list-style: none; } 
ul.list-01 li { padding-left: 1.2em; text-indent: -1.2em; }
ul.list-01 li:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #b2b2b2;
	margin-right: 0.3em;
}
/*************************************
* ボタン
*************************************/
.btn-01 {
	position: relative;
	background-color: #ffffff;
	color: #a7bfbf;
	padding: 15px 30px 15px 30px;
	display: inline-block;
	margin-top: 1.5rem;
	border-radius: 5px;
}
.btn-01:hover { opacity: 0.5; }
.btn-02 {
	position: relative;
	background-color: #333333;
	color: #fff;
	padding: 20px 50px 20px 50px;
	display: inline-block;
	margin-top: 1.5rem;
	border-radius: 10px;
}
.btn-02:hover { background-color: #b2b2b2; opacity: 1; }
.btn-03 {
	background-color: #fff;
	padding: 5px;
	font-size: 12px;
	color: #a7bfbf;
	border-radius: 5px;
}
.btn-03:hover { opacity: 0.5; }
/*************************************
* header
*************************************/
#header-top {
	background-color: #fff;
	position: fixed;
	width: 80px;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 1000;
}
.header-main { position: relative; width: 100%; height: 100%; text-align: center; }
.h-ttl { position: absolute; top: 50%; left: 0; right: 0; margin-top: -210px; }
.h-ttl a { display: block; }
.h-ttl h1 span {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 13px;
	margin-bottom: 10px;
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
	vertical-align: middle;
}
.h-ttl h1 img { width: 30px; display: block; vertical-align: middle; }
.h-ttl h1 {
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.h-ttl h1:hover {
	opacity: 0.5;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
/*バーガーメニュー*/
#side-bar-menu { position: relative; }
.nav-toggle {
	position: absolute;
	left: 14px;
	top: 4px;
	display: block;
	width: 52px;
	height: 52px;
	cursor: pointer;
	z-index: 1100;
}
.nav-toggle span {
	display: block;
	position: absolute; /* .toggleに対して */
	width: 36px;
	border-bottom: solid 4px #321400;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	right: 8px;
}
.nav-toggle span:nth-child(1) { top: 12px; }
.nav-toggle span:nth-child(2) { top: 24px; }
.nav-toggle span:nth-child(3) { top: 36px; }
.nav-toggle p {
	padding-top: 40px;
	font-size: 12px;
	text-align: center;
}
/***** クリック後のボタン *****/
/* 最初のspanをマイナス45度にする */
.nav-toggle.active span:nth-child(1) {
	top: 24px;
	left: 8px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-bottom: solid 4px #321400;
	opacity: 1;
}
/* 2番目と3番目のspanを45度にする */
.nav-toggle.active span:nth-child(2),
.nav-toggle.active span:nth-child(3) {
	top: 24px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
	border-bottom: solid 4px #321400;
	opacity: 1;
}
/* .global-navi */
.global-navi {
	transform: scale(1,1) translateX(-100%);
	position: fixed;
	top: 0;
	left: 0;
	width: 400px;
	z-index: 900;
	padding: 30px 10% 50px 10%;
	background: rgba(255,255,255,0.96);
	transition: all 0.8s;
	height: 100%;
	text-align: left;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
    opacity: 0;
}
/* .global-naviに.activeが追加 */
.global-navi.active {
	opacity: 1;
	transform: scale(1,1) translateX(0);
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
/*グロナビ*/
.global-navi ul, .global-navi ul li { list-style: none; }
.global-navi ul { margin-bottom: 1rem; }
.global-navi ul li a { padding: 10px 0 10px 10px; display: block; }
.global-navi ul li a:hover { background-color: #f2f2f2; }
.global-navi ul li a span { font-size: 14px; color: #b2b2b2; letter-spacing: 0.1em; margin-left: 20px; }
a.hmenu-tel { display: block; pointer-events: none; font-size: 1.5rem; letter-spacing: 0.1em; margin-top: 1.5rem; }
a.hmenu-mail { display: inline-block; padding: 5px 20px 5px 20px; border: 1px solid #333333; border-radius: 5px; margin-top: 1.5rem; }
.hmenu-add { margin-top: 1.5rem; }
.hmenu-detail { padding-left: 10px; }
/*************************************
* footer
*************************************/
footer { margin-left: 80px; background-color: #a7bfbf; color: #fff; text-align: center; padding: 40px 0 15px 0; position: relative; z-index: 500;}
footer .content-inner { margin-bottom: 0; }
.f-name { width: 300px; margin: 1rem auto 1rem auto; }
.copy { margin-top: 2rem; font-size: 10px; letter-spacing: 0.1em; }
a.f-tel-link { pointer-events: none; color: #fff; }
a.f-tel-link:visited { color: #fff; }
/*************************************
* メインイメージ
*************************************/
.bg-img-00 {
	position: relative;
	height: 100%;
	overflow: hidden;
}
.bg-img-00:before {
	content: " ";
	position: fixed;
	top: 0;
	left: 40px;
	width: 100%;
	height: 100%;
	background-image: url("../img/photo/slide01.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	animation-name: zoomin-bgimg;
	animation-duration: 10s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.main-menu {
	position: absolute;
	right: 8%;
	top: 70px;
	animation-name: fadein-ttl;
	animation-duration: 4s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-delay: 4s;
	opacity: 0;
	animation-fill-mode: forwards;
}
.main-menu ul li {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: block;
	float: left;
	vertical-align: top;
	letter-spacing: 0.1em;
	
}
.main-menu ul li a { padding: 10px; display: block; }
.main-menu ul li span { margin-top: 20px; font-size: 12px; color: #939393; letter-spacing: 0.1em; }
.main-copy {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 0;
	right: 0;
	margin-top: -150px;
	text-align: center;
}
.main-copy h3 {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 40px;
	line-height: 80px;
	letter-spacing: 0.2em;
	margin-left: auto;
	margin-right: auto;
	animation-name: fadein-ttl;
	animation-duration: 4s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-delay: 3s;
	opacity: 0;
	animation-fill-mode: forwards;
	display: inline-block;
}
/*スクロールバー*/
.top-main-scroll-00 {
	animation-name: fadein-ttl;
	animation-duration: 4s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-delay: 4s;
	opacity: 0;
	animation-fill-mode: forwards;
}
.scroll {
    bottom: 0;
    height: 150px;
    position: absolute;
    width: 100%;
    overflow: hidden;
}
.scroll-wheel {
    animation: sdb2 3.5s ease-out infinite;
    background-color: #fff;
    height: 10px;
    left: 50%;
    margin-left: -5px;
    position: absolute;
    width: 10px;
    bottom: 140px;
    border-radius: 50%;
}
.scroll::before {
    background-color: #fff;
    content: "";
    display: block;
    height: 150px;
    left: 50%;
    bottom: 0;
    position: absolute;
    width: 1px;
}
.scroll-txt {
	position: absolute;
	letter-spacing: 0.2em;
	font-size: 10px;
	top: 0;
	right: 50%;
	margin-right: -30px;
	color: #fff;
	width: 100%;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.scroll-txt a { color: #fff; }

/*************************************
* 企業理念
*************************************/
#main-01 .h2-01-area {
	position: absolute;
	z-index: 20;
	top: 0;
	left: 0;
	width: 100%;
	padding: 25px 0 40px 0;
	background-color: #a7bfbf;
	color: #fff;
	text-align: center;
	margin-bottom: 0;
}
.slide2 {
	position: relative;
	height: 100vh;
	overflow: hidden;
}
.bg-img-01 {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url("../img/photo/slide02.jpg");
	background-position: center bottom 20%;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 10;
	background-attachment: fixed;
}
.rinen-copy {
	position: absolute;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #fff;
	font-size: 35px;
	line-height: 70px;
	letter-spacing: 0.2em;
	top: 200px;
	right: 5%;
}
.rinen-bodycopy {
	position: absolute;
	width: 35%;
	left: 5%;
	bottom: 12%;
	padding: 20px;
	background-color: rgba(0,0,0,0.75);
	color: #fff;
}
/*************************************
* 事業案内
*************************************/
section#service { background-color: #f5f8f8; }
.service-01 { float: left; width: 70%; }
.service-02 { float: right; width: 27%; }
.img-s { width: 90%; margin-top: 1rem; margin-left: auto; }
/*************************************
* 取扱メーカー
*************************************/
section#manufacturers { background-color: #f5f8f8; }
.maker-list { font-size: 0; }
.maker-detail {
	display: inline-block;
	vertical-align: top;
	font-size: 1rem;
	width: 18%;
	margin: 0 1% 2rem 1%;
	text-align: center;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.maker-detail:hover {
	opacity: 0.5;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.maker-detail h5.h5-01 { margin-top: 0.5rem; }
/*************************************
* 会社案内
*************************************/
section#company { background-color: rgba(245,248,248,0.9); }
.company-01 { width: 70%; float: left; }
.company-02 { width: 27%; float: right; }
.rinen-detail { font-size: 0; margin-bottom: 1rem; }
.rinen-detail > * {
	font-size: 1rem;
	display: inline-block;
	vertical-align: text-top;
}
h5.h5-rinen {
	font-family: 'PT Serif';
	font-size: 35px;
	padding-right: 15px;
}
.rinen-detail p {
	padding-left: 15px;
	border-left: 1px solid #333333;
	width: 90%;
}
.president-name { text-align: right; font-size: 14px; margin-top: 2rem; }
.president-name span { font-size: 18px; }


























}




































@media screen and (max-width: 1000px) {
/*************************************
* 共通
*************************************/
section.slide3,section.slide4 { padding-bottom: 5rem; }
#main-content { margin-left: 80px; }
.dsp-no-sp { display: none !important; }
.content-inner { width: 93%; margin: 0 auto 3rem auto; padding: 0; height: 100%; }
.detail-inner { margin: 0 0 2rem 0; padding: 0; width: 100%; height: 100%; }
#pagetop { position: fixed; width: 40px; height: 30px; bottom: 15px; right: 15px; z-index: 500; }
#pagetop a:before {
	font-family: FontAwesome;
	content: '\f077';
	color: #b2b2b2;
	font-size: 40px;
	padding: 1px;
	display: inline-block;
}
.area-r { text-align: center; margin: auto; }
.area-l { text-align: center; margin: auto; }
.area-c { text-align: center; margin: auto; }
.font-s { font-size: 0.8rem; line-height: 1.3rem }
/*フェードイン*/
.effect {
  -webkit-transition: 2s ease-in-out;
  -moz-transition: 2s ease-in-out;
  -o-transition: 2s ease-in-out;
  transition: 2s ease-in-out;
  opacity: 0;
  transform: translateX(-50px);
}
.effect-u {
  -webkit-transition: 2s ease-in-out;
  -moz-transition: 2s ease-in-out;
  -o-transition: 2s ease-in-out;
  transition: 2s ease-in-out;
  opacity: 0;
  transform: translateY(50px);
}
.fadein { opacity: 1; transform: translateX(0px); }
/* ローディングのアニメーション部分のCSS */
.loader-animation {
	width: 100%;
	position: absolute;
	height: 100%;;
	background-image: url("../img/svg/logo_y_b.svg");
	background-position: right 10% center;
	background-repeat: no-repeat;
	background-size: auto 30px;
	-webkit-animation:load1 3s ease-out infinite;
	animation:load1 3s ease-out infinite;  
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
/*************************************
* 見出し
*************************************/
.h2-01-area {
	width: 100%;
	padding: 25px 0 40px 0;
	background-color: #a7bfbf;
	color: #fff;
	text-align: center;
	margin-bottom: 3rem;
}
h2.h2-01 { font-size: 30px; line-height: 35px; letter-spacing: 0.1em; display: block; color: #fff; }
h2.h2-01 span { font-size: 13px; color: #fff; display: block; }
.h2-01-area:after {
	content: " ";
	width: 1px;
	background-color: #fff;
	height: 40px;
	position: absolute;
	text-align: center;
}
h4.h4-01 { font-size: 23px; padding-left: 12px; border-left: 5px solid #a7bfbf; margin-bottom: 0.8rem; }
h5.h5-01 { font-size: 1rem; line-height: 1.4rem; }
/*************************************
* テーブル
*************************************/
th {  }
.table-01 { margin-bottom: 1rem; border-top: 1px solid #ebebeb; width: 100%; }
.table-01 tr { border-bottom: 1px solid #ebebeb; display: inline-block; line-height: 1.5rem; padding-left: 2.5%; padding-right: 2.5%; width: 95%; }
.table-01 tr > * { padding: 10px 0 10px 0; }
.table-01 th { font-weight: bold; width: 15%; display: inline-block; }
.table-01 td { width: 75%; display: inline-block; margin-left: 5%; }

/*************************************
* リスト
*************************************/
ul.list-01, ul.list-01 li { list-style: none; } 
ul.list-01 li { padding-left: 1.2em; text-indent: -1.2em; }
ul.list-01 li:before {
	font-family: FontAwesome;
	content: '\f111';
	color: #b2b2b2;
	margin-right: 0.3em;
}
/*************************************
* ボタン
*************************************/
.btn-01 {
	position: relative;
	background-color: #ffffff;
	color: #a7bfbf;
	padding: 15px 30px 15px 30px;
	display: inline-block;
	margin-top: 1.5rem;
	border-radius: 5px;
}
.btn-01:hover { opacity: 0.5; }
.btn-02 {
	position: relative;
	background-color: #333333;
	color: #fff;
	padding: 20px 50px 20px 50px;
	display: inline-block;
	margin-top: 1.5rem;
	border-radius: 10px;
}
.btn-02:hover { background-color: #b2b2b2; opacity: 1; }
.btn-03 {
	background-color: #fff;
	padding: 5px;
	font-size: 12px;
	color: #a7bfbf;
	border-radius: 5px;
	display: block;
}
.btn-03:hover { opacity: 0.5; }
/*************************************
* header
*************************************/
#header-top {
	background-color: #fff;
	position: fixed;
	width: 80px;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 1000;
}
.header-main { position: relative; width: 100%; height: 100%; text-align: center; }
.h-ttl { position: absolute; top: 50%; left: 0; right: 0; margin-top: -210px; }
.h-ttl h1 span {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 13px;
	margin-bottom: 10px;
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
	vertical-align: middle;
}
.h-ttl h1 img { width: 30px; display: block; vertical-align: middle; }
.h-ttl h1 {
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.h-ttl h1:hover {
	opacity: 0.5;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
/*バーガーメニュー*/
#side-bar-menu { position: relative; }
.nav-toggle {
	position: absolute;
	left: 14px;
	top: 4px;
	display: block;
	width: 52px;
	height: 52px;
	cursor: pointer;
	z-index: 1100;
}
.nav-toggle span {
	display: block;
	position: absolute; /* .toggleに対して */
	width: 36px;
	border-bottom: solid 4px #321400;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	right: 8px;
}
.nav-toggle span:nth-child(1) { top: 12px; }
.nav-toggle span:nth-child(2) { top: 24px; }
.nav-toggle span:nth-child(3) { top: 36px; }
.nav-toggle p {
	padding-top: 40px;
	font-size: 12px;
	text-align: center;
}
/***** クリック後のボタン *****/
/* 最初のspanをマイナス45度にする */
.nav-toggle.active span:nth-child(1) {
	top: 24px;
	left: 8px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
	border-bottom: solid 4px #321400;
	opacity: 1;
}
/* 2番目と3番目のspanを45度にする */
.nav-toggle.active span:nth-child(2),
.nav-toggle.active span:nth-child(3) {
	top: 24px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
	border-bottom: solid 4px #321400;
	opacity: 1;
}
/* .global-navi */
.global-navi {
	transform: scale(1,1) translateX(-100%);
	position: fixed;
	top: 0;
	left: 0;
	width: 400px;
	z-index: 900;
	padding: 30px 10% 50px 10%;
	background: rgba(255,255,255,0.96);
	transition: all 0.8s;
	height: 100%;
	text-align: left;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
    opacity: 0;
    overflow: scroll;
}
/* .global-naviに.activeが追加 */
.global-navi.active {
	opacity: 1;
	transform: scale(1,1) translateX(0);
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
/*グロナビ*/
.global-navi ul, .global-navi ul li { list-style: none; }
.global-navi ul { margin-bottom: 1rem; }
.global-navi ul li a { padding: 10px 0 10px 10px; display: block; }
.global-navi ul li a:hover { background-color: #f2f2f2; }
.global-navi ul li a span { font-size: 14px; color: #b2b2b2; letter-spacing: 0.1em; margin-left: 20px; }
a.hmenu-tel { display: block; font-size: 1.5rem; letter-spacing: 0.1em; margin-top: 1.5rem; }
a.hmenu-mail { display: inline-block; padding: 5px 20px 5px 20px; border: 1px solid #333333; border-radius: 5px; margin-top: 1.5rem; }
.hmenu-add { margin-top: 1.5rem; }
.hmenu-detail { padding-left: 10px; }
/*************************************
* footer
*************************************/
footer { margin-left: 80px; background-color: #a7bfbf; color: #fff; text-align: center; padding: 40px 0 15px 0;}
footer .content-inner { margin-bottom: 0; }
.f-name { width: 300px; margin: 1rem auto 1rem auto; }
.copy { margin-top: 2rem; font-size: 10px; letter-spacing: 0.1em; }
a.f-tel-link { color: #fff; }
a.f-tel-link:visited { color: #fff; }
/*************************************
* トップページ
*************************************/
.bg-img-00 {
	position: relative;
	height: 100%;
	overflow: hidden;
}
.bg-img-00:before {
	content: " ";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url("../img/photo/slide01.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	animation-name: zoomin-bgimg;
	animation-duration: 10s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-fill-mode: forwards;
}
.main-menu {
	position: absolute;
	right: 8%;
	top: 70px;
	animation-name: fadein-ttl;
	animation-duration: 5s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-delay: 4s;
	opacity: 0;
	animation-fill-mode: forwards;
}
.main-menu ul li {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: block;
	float: left;
	vertical-align: top;
	letter-spacing: 0.1em;
	
}
.main-menu ul li a { padding: 10px; display: block; }
.main-menu ul li span { margin-top: 20px; font-size: 12px; color: #939393; letter-spacing: 0.1em; }
.main-copy {
	position: absolute;
	width: 100%;
	text-align: center;
	top: 50%;
	margin-top: -150px;
	text-align: center;
}
.main-copy h3 {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 40px;
	line-height: 80px;
	letter-spacing: 0.2em;
	margin-left: auto;
	margin-right: auto;
	animation-name: fadein-ttl;
	animation-duration: 5s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-delay: 3s;
	opacity: 0;
	animation-fill-mode: forwards;
	display: inline-block;
}
/*スクロールバー*/
.top-main-scroll-00 {
	animation-name: fadein-ttl;
	animation-duration: 5s;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	animation-delay: 4s;
	opacity: 0;
	animation-fill-mode: forwards;
}
.scroll {
    bottom: 0;
    height: 150px;
    position: absolute;
    width: 100%;
    overflow: hidden;
}
.scroll-wheel {
    animation: sdb2 3.5s ease-out infinite;
    background-color: #fff;
    height: 10px;
    left: 50%;
    margin-left: -5px;
    position: absolute;
    width: 10px;
    bottom: 140px;
    border-radius: 50%;
}
.scroll::before {
    background-color: #fff;
    content: "";
    display: block;
    height: 150px;
    left: 50%;
    bottom: 0;
    position: absolute;
    width: 1px;
}
.scroll-txt {
	position: absolute;
	letter-spacing: 0.2em;
	font-size: 10px;
	top: 0;
	right: 50%;
	margin-right: -30px;
	color: #fff;
	width: 100%;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.scroll-txt a { color: #fff; }
/*************************************
* 企業理念
*************************************/
#main-01 .h2-01-area {
	position: absolute;
	z-index: 20;
	top: 0;
	left: 0;
	width: 100%;
	padding: 25px 0 40px 0;
	background-color: #a7bfbf;
	color: #fff;
	text-align: center;
	margin-bottom: 0;
}
.slide2 {
	position: relative;
	min-height: 800px;
	overflow: hidden;
}
.bg-img-01 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url("../img/photo/slide02.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 10;
}
.rinen-copy {
	position: absolute;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #fff;
	font-size: 35px;
	line-height: 70px;
	letter-spacing: 0.2em;
	top: 200px;
	right: 5%;
}
.rinen-bodycopy {
	position: absolute;
	width: 35%;
	left: 5%;
	bottom: 12%;
	padding: 20px;
	background-color: rgba(0,0,0,0.75);
	color: #fff;
}
/*************************************
* 事業案内
*************************************/
.service-02 { width: 80%; max-width: 400px; }
.img-s { margin-top: 1rem; }
/*************************************
* 取扱メーカー
*************************************/
.maker-list { font-size: 0; }
.maker-detail {
	display: inline-block;
	vertical-align: top;
	font-size: 1rem;
	width: 30%;
	margin: 0 1.5% 2rem 1.5%;
	text-align: center;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.maker-detail:hover {
	opacity: 0.5;
	-webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}
.maker-detail h5.h5-01 { margin-top: 0.5rem; }
/*************************************
* 会社案内
*************************************/
.company-01 {  }
.company-02 { margin-top: 1rem; max-width: 400px; }
.rinen-detail { font-size: 0; margin-bottom: 1rem; }
.rinen-detail > * {
	font-size: 1rem;
	display: inline-block;
	vertical-align: text-top;
}
h5.h5-rinen {
	font-family: 'PT Serif';
	font-size: 35px;
	padding-right: 15px;
}
.rinen-detail p {
	padding-left: 15px;
	border-left: 1px solid #333333;
	width: 90%;
}
.president-name { text-align: right; font-size: 14px; margin-top: 2rem; }
.president-name span { font-size: 18px; display: block; }








}




@media only screen and (max-width: 850px){
/*************************************
* 共通
*************************************/
#main-content { margin-left: 55px; }
/* ローディングのアニメーション部分のCSS */
.loader-animation {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 25px;
}

/*************************************
* ボタン
*************************************/
.btn-01 { display: block; }
/*************************************
* header
*************************************/
#header-top { width: 55px }
.h-ttl { margin-top: -116px; }
.nav-toggle { left: 2px; }
.global-navi { width: 100%; padding: 40px 20px 100px 75px; box-sizing: border-box; }
/*************************************
* footer
*************************************/
footer { margin-left: 55px; background-color: #a7bfbf; color: #fff; text-align: center; padding: 40px 0 15px 0;}
footer .content-inner { margin-bottom: 0; }
.f-name { width: 220px; margin: 1rem auto 1rem auto; }
/*************************************
* メインイメージ
*************************************/
.main-menu { display: none }
/*スクロールバー*/
.scroll { height: 100px; }
.scroll-wheel { bottom: 90px; }
.scroll::before { height: 100px; }
/*************************************
* 企業理念
*************************************/
.slide2 {
	position: relative;
	min-height: inherit;
}
.bg-img-01 {
	position: static;
	top: auto;
	left: auto;
	width: 100%;
	height: auto;
	background-image: url("../img/photo/slide02.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 10;
	padding-top: 30px;
	padding-bottom: 100px
}
.rinen-area {
	margin-top: 160px;
	margin-right: 5%;
	margin-left: 5%;
	margin-bottom: 100px;
	width: 80%;
	padding: 50px 5% 50px 5%;	
	background-color: rgba(0,0,0,0.75);
}
.rinen-copy {
	position: static;
	-ms-writing-mode: lr-tb;
	writing-mode: lr-tb;
	color: #fff;
	font-size: 20px;
	line-height: 30px;
	letter-spacing: 0.2em;
	top: auto;
	right: auto;
	margin-bottom: 1rem;
}
.rinen-bodycopy {
	position: static;
	width: auto;
	left: auto;
	bottom: auto;
	padding: 0;
	background-color: rgba(0,0,0,0);
	color: #fff;
}
.rinen-bodycopy p { text-align: justify; }
/*************************************
* 会社概要
*************************************/
.rinen-list br { display: none; }
.rinen-detail p { text-align: justify; }




}



@media only screen and (max-width: 600px){
/*************************************
* header
*************************************/
.h-ttl { margin-top: -90px; }
.h-ttl h1 img { width: 25px; }
/*************************************
* メインイメージ
*************************************/
.main-copy { margin-top: -120px; }
.main-copy h3 { font-size: 35px; line-height: 55px;  }


}


@media only screen and (max-width: 500px){
/*************************************
* 見出し
*************************************/
h2.h2-01 { font-size: 25px; line-height: 30px; }
/*************************************
* テーブル
*************************************/
.table-01 { border: none; }
.table-01 tr { padding: 0; border: none; }
.table-01 th { display: block; width: 100%; padding: 5px 2% 5px 2%; background-color: #f1f1f1; }
.table-01 td { width: 100%; padding: 5px 2% 5px 2%; display: block; margin-left: 0; }
/*************************************
* 取扱メーカー
*************************************/
.maker-detail {	width: 46%; margin: 0 2% 2rem 2%; }
/*************************************
* 事業案内
*************************************/
.service-02 { width: 100%; }







}




@media only print {
/*フェードイン*/
.effect {
  opacity: 1 !important;
  transform: translateX(0px) !important;
}
.effect-u {
  opacity: 1 !important;
  transform: translateY(0px) !important;
}
/*HOME*/
#js-loader { display: none; }
.bg-img-00 {
	width: 100%;
	height: 100%;
	background-image: url("../img/photo/slide01.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.main-copy, .main-copy h3, .main-menu, .top-main-scroll-00 { opacity: 1; }
/*メイン　背景画像*/
.bg-img-00 {
	position: relative;
	height: 100%;
	overflow: hidden;
	background-image: url("../img/photo/slide01.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.bg-img-00:before {
	display: none;
}
/*小江戸　背景画像*/
.bg-img-01 {

}
.print-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url("../img/photo/slide02.jpg");
	background-position: center bottom 20%;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 10;
}







}