@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');

/* 
font-family: 'Noto Sans JP', sans-serif;

*/
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
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, font, 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 {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
@media all and (max-width: 374px) {
	html {
		font-size: 56%;
	}
}

@font-face {
	font-family: 'Futura';
	font-style: normal; 
	font-weight: 500;
	src:url('fonts/Futura-Medium-01.woff') format('woff'),
	url('fonts/Futura-Medium-01.ttf')  format('truetype');
}
@font-face {
	font-family: 'Futura02';
	font-style: normal; 
	font-weight: 700;
	src:url('fonts/Futura-Bold-03.woff') format('woff'),
	url('fonts/Futura-Bold-03.ttf')  format('truetype');
}
body, table, input, textarea, select, option {
	font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
	box-sizing: border-box;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
a,
a:link {
	color: #FFF;
	text-decoration: none;
}
a:visited {
	color: #FFF;
}
a:hover {
	color: #FFF;
}
a:active {
	color: #FFF;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1200px;
	color: #FFF;
	font-size: 1.5rem;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #000;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
}
#container {
	text-align: left;
	position: relative;
	overflow: hidden;
}
#main {
	display: block;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.05rem;
	}
	body.fixed {
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
	#container {
		padding-top: 53px;
	}
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	z-index: 999;
	background-color: rgba(0,0,0,0.6);
}
#gHeader .hBox {
	display: flex;
	justify-content: space-between;
}
#gHeader .logo {
	margin: 10px 10px 0 8px;
}
#gHeader .rightBox {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#gHeader .hBtn {
	margin-left: 30px;
}
#gHeader .hBtn a {
	width: 143px;
	height: 68px;
	font-weight: bold;
	font-size: 1.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-left: 1px solid #fff;
}
#gHeader .hBtn span {
	display: block;
}
#gHeader .hBtn span img {
	margin: 0 4px 0 -2px;
	width: 20px;
	display: inline-block;
	vertical-align: middle;
}
#gHeader .naviUl {
	padding-top: 2px;
	display: flex;
	font-size: 1.5rem;
	font-family:"Futura";
	font-weight: normal;
	justify-content: flex-end;
	letter-spacing: 0.038em;
}
#gHeader .naviUl li {
	margin-left: 25px;
}
#gHeader .naviUl li:first-child {
	margin-left: 0;
}
@media all and (min-width: 897px) {
	#gHeader .naviUl a:hover {
		opacity: 0.7;
	}
	#gHeader .hBtn a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#gHeader {
		height: 53px;
		background: #000;
		border-bottom: none;
	}
	#gHeader .logo {
		margin: 6px 0 0 8px;
		width: 298px;
	}
	#gHeader .hBox {
		display: block;
	}
}
@media all and (max-width: 374px) {
	#gHeader .logo {
		margin: 10px 0 0 8px;
		width: 250px;
	}
}

/* menu */
.menu {
	position: absolute;
	top: 18px;
	right: 17px;
	height: 30px;
	width: 29px;
	cursor: pointer;
	z-index: 100;
	transition: opacity .25s ease;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
.menu.active .top {
	-webkit-transform: translateY(10px) translateX(0) rotate(-45deg);
	-ms-transform: translateY(10px) translateX(0) rotate(-45deg);
	transform: translateY(10px) translateX(0) rotate(-45deg);
	background: #fff;
}
.menu.active .middle {
	opacity: 0;
	background: #fff;
}
.menu.active .bottom {
	-webkit-transform: translateY(-10px) translateX(0) rotate(45deg);
	-ms-transform: translateY(-10px) translateX(0) rotate(45deg);
	transform: translateY(-10px) translateX(0) rotate(45deg);
	background: #fff;
}
.menu span {
	background: #fff;
	border: none;
	height: 3px;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: all .35s ease;
	transition: all .35s ease;
	cursor: pointer;
}
.menu span:nth-of-type(2) {
	top: 10px;
}
.menu span:nth-of-type(3) {
	top: 20px;
}

/* menuBox */
@media all and (min-width: 897px) {
	.menuBox {
		display: none;
	}
}
.menuBox {
	width: 100%;
	height: calc(100% - 53px);
	position: fixed;
	top: 53px;
	left: 0;
	box-sizing: border-box;
	background-color: #000;
	z-index: 100;
	display: none;
	overflow-y: auto;
}
.menuBox .innerBox {
	padding: 20px 0;
}
.menuBox .naviUl02 {
	border-top: 1px solid #fff;
}
.menuBox .naviUl02 a {
	color: #fff;
	display: block;
	font-family: "Futura";
	font-weight: normal;
	border-bottom: 1px solid #fff;
	text-align: center;
	font-size: 1.55rem;
	padding: 19px 0 18px;
}
.menuBox .btn {
	margin: 11px 15px 0;
}
.menuBox .btn a {
	padding-top: 2px;
	width: 100%;
	height: 60px;
	color: #000;
	font-size: 1.55rem;
	font-weight: bold;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #FFFFFF;
	position: relative;
}
.menuBox .btn a::after {
	margin-top: -10px;
	width: 20px;
	height: 25px;
	position: absolute;
	top: 50%;
	right: 21px;
	background: url("img/common/icon05.png") no-repeat left top / 100% 100%;
	content: "";
}
.menuBox .btn img {
	width: 19px;
	display: inline-block;
	vertical-align: middle;
	margin: -5px 6px 0 -6px;
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
	padding: 72px 0 8px;
	color: #000;
	font-weight: 500;
	font-size: 1.3rem;
	line-height: 1.53;
	background-color: #fff;
	position: relative;
	z-index: 10;
}
#gFooter a {
	color: #000;
}
#gFooter p {
	line-height: 1.53;
}
#gFooter .fBox {
	margin: 0 auto;
	max-width: 992px;
}
#gFooter .innerFlex {
	margin-bottom: 30px;
	padding-bottom: 73px;
	display: none;
	justify-content: space-between;
	border-bottom: 1px solid #928F8E;
}
#gFooter .innerFlex .leftBox {
	flex: 1;
}
#gFooter .innerFlex .banner {
	margin: 2px 0 0 20px;
	width: 414px;
	flex-shrink: 0;
}
#gFooter .fLogo {
	margin-bottom: 28px;
}
#gFooter .txtUl li {
	margin-bottom: 27px;
	letter-spacing: 0.03em;
}
#gFooter .txtUl li:last-child {
	margin-bottom: 0;
}
#gFooter .fNavi {
	display: flex;
	flex-wrap: wrap;
	letter-spacing: 0.03em;
	line-height: 1.38;
}
#gFooter .fNavi > li {
	margin-top: 37px;
	min-width: 153px;
}
#gFooter .fNavi > li:nth-child(2) {
	min-width: 216px;
}
#gFooter .fNavi > li:nth-child(3) {
	min-width: 156px;
}
#gFooter .fNavi > li:nth-child(4) {
	min-width: 178px;
}
#gFooter .fNavi > li:nth-child(5) {
	min-width: 207px;
}
#gFooter .fNavi > li:nth-child(6) {
	min-width: 0;
}
#gFooter .fNavi > li:first-child {
	margin-top: 0;
}
#gFooter .fNavi li ul {
	margin-bottom: 32px;
}
#gFooter .fNavi li ul:last-child {
	margin-bottom: 5px;
}
#gFooter .fNavi .mar {
	margin-bottom: 10px;
}
#gFooter .fNavi > li:first-child .mar {
	margin-bottom: 19px;
}
#gFooter .fNavi ul li {
	margin-bottom: 7px;
}
#gFooter .fNavi ul li:last-child {
	margin-bottom: 0;
}
#gFooter .footBtm {
	padding-top: 22px;
	margin-top: 30px;
	border-top: 1px solid #000;
}
#gFooter .copyright {
	text-align: center;
	font-style: normal;
}
#gFooter .linkUl {
	margin-bottom: 6px;
	display: flex;
	justify-content: center;
	letter-spacing: 0.08em;
	font-size: 1.2rem;
}
#gFooter .linkUl li {
	margin: 0 5px;
}
#gFooter .linkUl a {
	display: inline-block;
	margin-right: 8px;
}
#gFooter .flex {
	margin: 0 auto 27px;
	max-width: 518px;
	justify-content: space-between;
}
#gFooter .flex .icon {
	width: 70px;
	flex-shrink: 0;
}
#gFooter .flex .txt {
	margin: 13px 0 0 28px;
	flex: 1;
	font-size: 1.2rem;
	line-height: 2.16;
}
@media all and (min-width: 897px) {
	#gFooter .linkUl a:hover,
	#gFooter .fNavi a:hover,
	#gFooter .innerFlex .banner a:hover{
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	#gFooter {
		padding: 26px 0 5px;
		font-size: 0.936rem;
	}
	#gFooter .innerFlex {
		margin-bottom: 30px;
		padding-bottom: 0;
		display: block;
		border-bottom: none;
	}
	#gFooter .innerFlex .leftBox {
		margin-bottom: 29px;
		text-align: center;
	}
	#gFooter .fLogo img {
		width: 158px;
	}
	#gFooter .fLogo {
		margin-bottom: 20px;
	}
	#gFooter .txtUl li {
		margin-bottom: 20px;
	}
	#gFooter .innerFlex .banner {
		margin: 0 auto;
		width: auto;
		max-width: 263px;
	}
	#gFooter .flex .txt {
		margin: 0 0 0 19px;
		font-size: 0.9rem;
		line-height: 1.8;
	}
	#gFooter .flex .icon {
		width: 45px;
	}
	#gFooter .flex {
		margin: 0 auto 12px;
		max-width: 375px;
		box-sizing: border-box;
		padding: 0 28px;
	}
	#gFooter .footBtm {
		padding-top: 19px;
	}
	#gFooter .linkUl {
		margin-bottom: 3px;
		font-size: 0.9rem;
	}
	#gFooter .copyright {
		font-size: 0.9rem;
	}
	#gFooter .innerFlex .banner img {
		width: 100%;
	}
}


/*------------------------------------------------------------
	pagePath
------------------------------------------------------------*/
#pagePath {
	max-width: 986px;
	margin: 0 auto 90px;
	padding-top: 17px;
	display: flex;
	font-size: 1.2rem;
}
#pagePath li {
	margin-right: 11px;
}
#pagePath a {
	margin-right: 11px;
}
#pagePath a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	#pagePath {
		display: none;
	}
}
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
.clearfix:after {content: "";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.content {
	max-width: 988px;
	margin: 0 auto;
}
.smlContent {
	margin: 0 auto;
	max-width: 860px;
}

/* headLine01 */
.headLine01 {
	margin-bottom: 41px;
	font-size: 2.8rem;
	font-family: 'Noto Sans JP', sans-serif;
}
.headLine01.center {
	text-align: center;
}
@media all and (max-width: 896px) {
	.headLine01 {
		margin: 0 12px 30px;
		font-size: 1.85rem;
	}
}

/* headLine02 */
.headLine02 {
	margin-bottom: 72px;
	padding: 9px 0 8px;
	font-family:"futura-pt";
	color: #6F6F6F;
	text-align: center;
	font-weight: normal;
	font-size: 2.9rem;
	background-color: #2C2C2C;
}
@media all and (max-width: 896px) {
	.headLine02 {
		margin-bottom: 35px;
		padding: 5px 0 6px;
		font-size: 1.885rem;
	}
}

/* headLine03 */
.headLine03 {
	margin-bottom: 61px;
	font-size: 3.4rem;
	text-align: center;
	line-height: 1.2;
	letter-spacing: 0.05em;
}
.headLine03 .en {
	margin-top: 6px;
	color: #A2070A;
	font-size: 5.1rem;
	font-family:"futura-pt";
	display: block;
	letter-spacing: 0.005em;
}
@media all and (max-width: 896px) {
	.headLine03 {
		margin-bottom: 26px;
		font-size: 1.9rem;
	}
	.headLine03 .en {
		letter-spacing: -0.02em;
		font-size: 3rem;
	}
}
@media all and (max-width: 374px) {
	.headLine03 .en {
		font-size: 2.7rem;
	}
}


/* greyBg */
.greyBg {
	padding-bottom: 80px;
	background-color: #323232;
}
@media all and (max-width: 896px) {
	.greyBg {
		padding-bottom: 28px;
		background-color: #2c2c2c;
	}
}

/* headLine04 */
.headLine04 {
	font-family:"futura-pt";
	font-size: 5.4rem;
	line-height: 1;
	letter-spacing: 0.01em;
}
.headLine04.center{
	text-align: center;
}
.headLine04 .col {
	color: #26AAF2;
	font-size: 8rem;
	line-height: 1;
	display: inline-block;
	vertical-align: -4px;
}
.headLine04 .size {
	font-size: 7.6rem;
}
.headLine04 .inner {
	display: block;
}
.headLine04 .inner + .inner {
	margin-top: -15px;
}
.headLine04 .bor {
	padding: 0 30px;
	display: inline-block;
	vertical-align: top;
	position: relative;
}
.headLine04 .bor::before,
.headLine04 .bor::after {
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
	background-color: #fff;
	content: "";
}
.headLine04 .bor::after {
	width: 20px;
	left: auto;
	right: -3px;
	bottom: 10px;
	transform: rotate(45deg);
}
@media all and (max-width: 896px) {
	.headLine04 {
		font-size: 3.24rem;
		line-height: 0.88;
	}
	.headLine04 .col {
		vertical-align: -2px;
		font-size: 4.8rem;
	}
	.headLine04 .size {
		font-size: 4.56rem;
	}
	.headLine04 .inner + .inner {
		margin-top: -8px;
	}
	.headLine04 .bor {
		margin: 0 0 0 -26px;
		padding: 0 0 5px 26px;
		display: block;
	}
	.headLine04 .bor::before,
	.headLine04 .bor::after {
		bottom: 0;
	}
	.headLine04 .bor::after {
		width: 10px;
		left: auto;
		right: -1px;
		bottom: 3px;
		transform: rotate(42deg);
	}
}

/* headLine05 */
.headLine05 {
	margin-bottom: 116px;
	font-size: 2.4rem;
	position: relative;
	line-height: 1.875;
	text-align: center;
}
.headLine05 .num {
	margin: -7px 0 0 -8px;
	height: 265px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.headLine05 .txt {
	display: block;
	position: relative;
	z-index: 10;
}
@media all and (max-width: 896px) {
	.headLine05 {
		margin: 0 -18px 66px;
		font-size: 1.55rem;
		position: relative;
		line-height: 1.875;
		text-align: center;
	}
	.headLine05 .num {
		margin: -5px 0 0 -5px;
		height: 173px;
	}
}


/* headLine06 */
.headLine06 {
	margin: 0 0 56px;
	padding: 19px 0;
	font-size: 2rem;
	text-align: center;
	background-color: #EFEFEF;
}
/* headLine07 */
.headLine07 {
	margin-bottom: 35px;
	padding: 0 10px;
	font-size: 2.2rem;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #000;
}
@media all and (max-width: 896px) {
	.headLine06 {
		margin-bottom: 25px;
		padding: 12px 0;
		font-size: 1.2rem;
	}
	.headLine07 {
		margin-bottom: 20px;
		font-size: 1.32rem;
	}
}

/* comTextBox */
.comTextBox {
	margin: 0 auto;
	max-width: 1000px;
}
.comTextBox .innerBox {
	margin: 25px auto 0;
	padding: 21px 0 17px 27px;
	max-width: 454px;
	border-left: 1px solid #26AAF2;
	box-sizing: border-box;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.035em;
}
.comTextBox .innerBox p {
	line-height: 2.5;
}
.comTextBox .headLine03 {
	margin-bottom: 15px;
	text-align: left;
	font-size: 4rem;
}
@media all and (max-width: 896px) {
	.comTextBox .headLine03 {
		margin-bottom: 14px;
		font-size: 2.25rem;
	}
	.comTextBox .innerBox p {
		line-height: 2.1;
	}
	.comTextBox .innerBox {
		max-width: inherit;
		margin: 22px 0 0 52px;
		padding: 14px 0 0 16px;
		font-size: 1.05rem;
	}
}

.mainVisual .comTextBox {
	padding-top: 151px;
}
.mainVisual .comTextBox .headLine04 {
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
@media all and (max-width: 896px) {
	.mainVisual .comTextBox {
		padding: 32px 26px 0;
	}
}
@media all and (max-width: 374px) {
	.mainVisual .comTextBox {
		padding: 32px 7px 0;
	}
}
/* comLink */
.comLink {
	text-align: right;
}
.comLink a {
	padding: 0 40px;
	display: inline-flex;
	position: relative;
	width: 208px;
	height: 50px;
	color: #000;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 1.864rem;
	font-weight: 600;
	background: #FFF;
	box-sizing: border-box;
}
.comLink a span {
	margin-top: 4px;
}
.comLink a img {
	margin: 0 5px 0 0;
	vertical-align: -1px;
}
.comLink a::after {
	position: absolute;
	width: 30px;
	height: 100%;
	right: 10px;
	top: 0;
	background: url(img/common/line_arrow.png) no-repeat right center / auto 12px;	
	content: '';
}
.comLink a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.comLink a {
		padding: 0 28px 0 10px;
		width: 122px;
		height: 32px;
		font-size: 1.21rem;
	}
	.comLink a::after {
		right: 8px;
		width: 19px;
		background-size: auto 6px;
	}
	.comLink a img {
		margin-right: 5px;
		width: 17px;
	}
}

/* comLine */
.comLine {
	margin-bottom: 48px;
	text-align: center;
}
.comLine .line {
	margin: 0 auto;
	width: 1px;
	height: 50px;
	overflow: hidden;
	display: block;
	position: relative
}
.comLine .line::before {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  -webkit-animation: common-slide 1.8s;
  -webkit-animation-iteration-count: infinite;
  animation: common-slide 1.8s;
  animation-iteration-count: 1;
  animation-iteration-count: infinite;
  content: "";
}
.comLine.center {
	position: absolute;
	top: -21px;
	left: 50%;
	transform: translateX(-50%);
}
@-webkit-keyframes common-slide {
	from {
		height: 100%;
		transform: translateY(-100%);
	}
	to {
		height: 100%;
		transform: translateY(0);
	}
}
@keyframes common-slide {
	from {
		height: 100%;
		transform: translateY(-100%);
	}
	to {
		height: 100%;
		transform: translateY(0);
	}
}
@media all and (max-width: 896px) {
	.comLine .line {
		height: 25px;
	}
	.comLine {
		margin-bottom: 28px;
	}
	.comLine.center {
		top: -8px;
	}
}

/* centerTxt */
.centerTxt {
	margin-bottom: 53px;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.875 !important;
	letter-spacing: 0.05em;
}
.centerTxt .col {
	color: #26AAF2;
}
@media all and (max-width: 896px) {
	.centerTxt {
		margin-bottom: 23px;
		font-size: 1.3rem;
		line-height: 1.73 !important;
	}
}
@media all and (max-width: 374px) {
	.centerTxt {
		letter-spacing: 0;
	}
}

/* comBanner */
.comBanner {
	margin-top: 95px;
	text-align: center;
}
@media all and (min-width: 897px) {
	.comBanner a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comBanner {
		margin: 66px 3px 0;
	}
	.comBanner img {
		width: 100%;
	}
}


/* comBtn */
.comBtn a {
	margin: 0 auto;
	width: 330px;
	padding: 5px 30px;
	display: flex;
	height: 77px;
	font-weight: bold;
	font-size: 1.8rem;
	box-sizing: border-box;
	justify-content: center;
	align-items: center;
	position: relative;
	background-color: #464646;
}
.comBtn a::after {
	margin-top: -10px;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	right: 8px;
	background: url("img/common/icon01.png") no-repeat left top / 100% 100%;
	content: "";
}
.comBtn.left a {
	margin: 0;
}
.comBtn.style a {
	background-color: #333333;
	border: 1px solid #fff;
}
@media all and (min-width: 897px) {
	.comBtn a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comBtn a {
		margin: 0 auto;
		width: 274px;
		padding: 5px 30px;
		height: 49px;
		font-size: 1.4rem;
	}
	.comBtn a::after {
		margin-top: -4px;
		width: 13px;
		height: 13px;
		right: 6px;
	}
}

/* comBtmBox */
.comBtmBox {
	padding: 58px 0 0;
	color: #000;
	background-color: #fff;
	position: relative;
	z-index: 10;
}
.comBtmBox .centerTxt {
	margin-bottom: 36px;
	font-size: 2rem;
	line-height: 1.95 !important;
}
.comBtmBox .flexBox {
	margin-top: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
}
.comBtmBox .ttl {
	margin: 0 3px 0 29px;
	letter-spacing: 0.05em;
}
.comBtmBox .telUl {
	margin: 0 15px;
	font-size: 2.26rem;
	display: flex;
	.comBtmBox .telUl
	justify-content: center;
	letter-spacing: 0.05em;
}
.comBtmBox .telUl a {
	padding-left: 25px;
	color: #000;
	display: inline-block;
	vertical-align: top;
	position: relative;
}
.comBtmBox .telUl li {
	margin: 0 18px;
}
.comBtmBox .telUl a::before {
	width: 20px;
	height: 20px;
	position: absolute;
	top: 7px;
	left: 0;
	background: url("img/common/icon02.png") no-repeat left top / 100% 100%;
	content: "";
}
.comBtmBox .content {
	padding-bottom: 66px;
	border-bottom: solid 1px #000;
}
@media all and (max-width: 896px) {
	.comBtmBox .centerTxt {
		margin-bottom: 31px;
		font-size: 1.3rem;
		line-height: 1.73 !important;
	}
	.comBtmBox {
		padding: 47px 0 0;
	}
	.comBtmBox .comBtn a {
		height: 52px;
	}
	.comBtmBox .flexBox{
		margin-top: 33px;
		display: block;
		text-align: center;
	}
	.comBtmBox .telUl {
		margin: 0;
		word-break: break-all;
		font-size: 1.468rem;
		letter-spacing: -0.05em;
		justify-content: center;
		white-space:nowrap;
	}
	.comBtmBox .ttl {
		margin: 0 0 12px;
	}
	.comBtmBox .telUl a {
		padding-left: 16px;
	}
	.comBtmBox .telUl a::before {
		width: 13px;
		height: 13px;
		top: 6px;
		left: 0;
	}
	.comBtmBox .telUl li {
		margin: 0 5px;
	}
	.comBtmBox .content {
		padding-bottom: 39px;
		margin: 0 !important;
	}
}
@media all and (max-width: 374px) {
	.comBtmBox .telUl a::before {
		top: 3px;
	}
}
/* comTxtUl */
.comTxtUl {
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 1.8rem;
	white-space:nowrap;
	font-feature-settings: normal;
	-moz-font-feature-settings: normal;
}
.comTxtUl p {
	line-height: 2;
	letter-spacing: 0.05em !important;
}
@media all and (min-width: 897px) {
	.comTxtUl li {
		margin: 0 21px;
		height: auto;
		-webkit-writing-mode : tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
}
@media all and (max-width: 896px) {
	.comTxtUl li {
		margin-bottom: 18px;
		text-align: center;
	}
	.comTxtUl li:last-child {
		margin-bottom: 0;
	}
	.comTxtUl {
		display: block;
		font-size: 1.05rem;
	}
	.comTxtUl p {
		letter-spacing: 0 !important;
	}
}

/* comPageUl */
.comPageUl {
	margin-top: 93px;
	display: flex;
	justify-content: center;
}
.comPageUl li {
	margin: 0 37px;
	width: 456px;
}
.comPageUl a {
	padding-right: 50px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #2C2C2C;
	position: relative;
}
.comPageUl a::after {
	margin-top: -23px;
	width: 39px;
	height: 39px;
	position: absolute;
	top: 50%;
	right: 17px;
	background: url("img/common/arrow01.png") no-repeat left top / 100% 100%;
	content: "";
}
.comPageUl .photo {
	width: 135px;
}
.comPageUl .photo img {
	width: 100%;
}
.comPageUl .rightBox {
	flex: 1;
}
.comPageUl .title {
	font-size: 2.4rem;
	text-align: center;
	font-weight: bold;
	line-height: 1.2 !important;
	letter-spacing: 0.05em !important;
}
.comPageUl .title span {
	margin-top: 13px;
	font-weight: normal;
	display: block;
	font-size: 1.3rem;
	letter-spacing: 0 !important;
}
@media all and (min-width: 897px) {
	.comPageUl a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comPageUl {
		display: block;
		margin: 37px 39px 0;
	}
	.comPageUl li {
		margin: 0 0 21px;
		width: inherit;
	}
	.comPageUl li:last-child {
		margin-bottom: 0;
	}
	.comPageUl .photo {
		width: 33.6%;
	}
	.comPageUl .title span {
		margin-top: 8px;
		font-size: 0.85rem;
		letter-spacing: 0 !important;
	}
	.comPageUl .title {
		font-size: 1.56rem;
	}
	.comPageUl a {
		padding-right: 36px;
	}
	.comPageUl a::after {
		margin-top: -15px;
		width: 26px;
		height: 26px;
		right: 11px;
	}
}
@media all and (max-width: 374px) {
	.comPageUl {
		margin: 37px 20px 0;
	}
}


/*------------------------------------------------------------
	index
------------------------------------------------------------*/
@media all and (max-width: 896px) {
}

/*------------------------------------------------------------
	ourculture
------------------------------------------------------------*/
#ourculture {
	overflow: hidden;
}
#ourculture #pagePath {
	padding-top: 18px;
	margin-bottom: 140px;
}
#ourculture .backBg {
	padding-bottom: 95px;
	background: #000;
	position: relative;
	z-index: 10;
}
#ourculture .mainImg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 654px;
	overflow: hidden;
	z-index: 1;
}
#ourculture .mainImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.topVisual {
	height: 654px;
	position: relative;
	z-index: 11;
}
.topVisual .textBox {
	position: absolute;
	left: 50%;
	bottom: 0;
	margin: 0 auto;
	max-width: 1000px;
	width: calc(100% - 40px);
	color: #FFF;
	transform: translateX(-50%);
}
.topVisual h2 {
	margin-bottom: 177px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 48px;
	letter-spacing: 1.5px;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
.topVisual .back {
	position: absolute;
	right: -30px;
	bottom: -70px;
	width: 274px;
	height: 256px;
	padding: 102px 10px 10px 64px;
	box-sizing: border-box;
	background-color: #AD0306;
}
.topVisual .back .img {
	position: absolute;
	right: 13px;
	top: 16px;
}
.topVisual .name {
	position: absolute;
	font-size: 2.6rem;
	font-weight: 600;
}
.topVisual .name::before {
	position: absolute;
	left: -25px;
	top: 5px;
	content: '';
	background: #000A0A;
	width: 7px;
	height: 32px;
}
.topVisual .name .en {
	margin: 8px 2px 0;
	display: block;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.33;
	font-family: 'Futura';
}
@media all and (max-width: 896px) {
	.topVisual {
		height: 90.6vw;
	}
	#ourculture .mainImg {
		top: 52px;
		height: 90.6vw;
		min-height: inherit;
	}
	.topVisual h2 {
		margin-bottom: 110px;
		font-size: 2rem;
		letter-spacing: 0;
		line-height: 1.5;
	}
	.topVisual .back {
		padding: 18px 27px 10px;
		left: 30px;
		height: 80px;
		bottom: -33px;
		width: calc(100% - 60px);
	}
	.topVisual .back .img {
		right: 9px;
		top: 15px;
		width: 68px;
	}
	.topVisual .name {
		font-size: 1.733rem;
	}
	.topVisual .name::before {
		left: -15px;
		top: 6px;
		width: 4px;
		height: 20px;
	}
	.topVisual .name .en {
		margin: 5px 2px 0;
		font-size: 0.975rem;
		line-height: 1.33;
	}
	#ourculture .backBg {
		padding: 80px 0 52px;
	}
}
#ourculture .sideTtl {
	position: relative;
}
#ourculture .sideTtl .ttl {
	position: absolute;
	left: 0;
	top: 0;
	color: #323232;
	line-height: 0.8;
	font-size: 5rem;
	font-family: 'Futura';
	white-space: nowrap;
	font-weight: 700;
	-webkit-writing-mode : tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl; 
}
#ourculture .imgBox .comLine {
	margin: 0;
	position: absolute;
	left: 50%;
	bottom: -100px;
}
#ourculture .imgBox .photoBox img {
	width: 100%;
}
#ourculture .imgBox h3 {
	margin: -8px 0 27px;
	font-size: 2.4rem;
}
#ourculture .imgBox .textBox p {
	text-align: justify;
	line-height: 2;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
}
#ourculture .imgBox.talkArea::after {
	display: none;
}
#ourculture .imgBox.talkArea .textBox {
	margin: 10px 0 0 6px;
	padding: 65px 0 75px 50px;
	background: url(img/ourculture/img01.png) no-repeat left top, url(img/ourculture/img02.png) no-repeat right 35px bottom;
	background-size: 61px;
}
#ourculture .imgBox.talkArea p {
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.93;
	letter-spacing: 0.025rem;
}
.otherPeople {
	margin: 0 auto;
	width: 806px;
}
.otherPeople h3 {
	margin-bottom: 26px;
	padding-bottom: 17px;
	font-size: 2.1rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.05em;
	background: url(img/ourculture/arrow.png) no-repeat right bottom / auto 17px;
}
.otherPeople h3 .en {
	margin: 8px 2px 0;
	display: block;
	color: #AD0306;
	font-size: 1.5rem;
	font-family: 'Futura';
	font-weight: 700;
	letter-spacing: 0;	
}
.otherPeople .btmLink a {
	position: relative;
	display: block;
	height: 100%;
}
.otherPeople .btmLink a:hover {
	opacity: 0.7;
}
.otherPeople .btmLink a .img {
	display: block;
	height: 100%;
}
.otherPeople .btmLink a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.otherPeople .btmLink .txt {
	padding: 35px 5px 10px;
	box-sizing: border-box;
	text-align: center;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
	background: rgba(0,0,0,0.5);
}
@media all and (min-width: 897px) {
	#ourculture .imgBox {
		margin-bottom: 165px;
		display: flex;
		position: relative;
		flex-direction: row-reverse;
	}
	#ourculture .imgBox .photoBox {
		margin-right: 50px;
		width: 442px;
	}
	#ourculture .imgBox .textBox {
		flex: 1;
	}
	#ourculture .imgBox.left {
		flex-direction: row;
	}
	#ourculture .imgBox.left .photoBox {
		margin: 0 0 0 50px;
	}
	#ourculture .imgBox.talkArea {
		align-items: center;
	}
	.otherPeople .btmLink {
		display: flex;
		position: relative;
	}
	.otherPeople .btmLink::after {
		width: 9999px;
		height: 102px;
		position: absolute;
		left: 50%;
		top: 50%;
		content: '';
		background-color: #464646;
		transform: translate(-50%,-50%);
	}
	.otherPeople .btmLink li {
		margin-right: 20px;
		width: calc((100% - 40px)/3);
		background: #000;
		position: relative;
		z-index: 10;
	}
	.otherPeople .btmLink li:nth-child(3n) {
		margin-right: 0;
	}
	.otherPeople .btmLink .txt {
		padding: 35px 5px 10px;
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		min-height: 168px;
	}
}
@media all and (max-width: 896px) {
	#ourculture .sideTtl {
		display: none;
	}
	#ourculture .imgBox {
		position: relative;
		margin-bottom: 91px;
	}
	#ourculture .imgBox .comLine {
		height: 25px;
		bottom: -50px;
	}
	#ourculture .imgBox .photoBox {
		margin: 0 0 10px;
	}
	#ourculture .imgBox .textBox {
		margin: 0 27px 35px;
	}
	#ourculture .imgBox h3 {
		margin: -8px 0 22px;
		font-size: 1.55rem;
		text-align: center;
	}
	#ourculture .imgBox .textBox p {
		line-height: 1.67;
	}
	#ourculture .imgBox.talkArea {
		margin: -30px 0 53px;
	}
	#ourculture .imgBox.talkArea .textBox {
		margin: 0 26px 44px;
		padding: 45px 0 53px 35px;
		background-position: left top,right bottom;
		background-size: 43px;
	}
	#ourculture .imgBox.talkArea p {
		font-size: 1.174rem;
		line-height: 1.926;
		font-weight: 500;
	}
	.otherPeople {
		margin: 0 40px;
		width: auto;
	}
	.otherPeople h3 {
		margin-bottom: 12px;
		padding-bottom: 10px;
		font-size: 1.36rem;
		background-size: auto 11px;
	}
	.otherPeople h3 .en {
		margin: 6px 2px 0;
		font-size: 0.975rem;
	}
	.otherPeople .btmLink li:not(:last-child) {
		margin-bottom: 17px;
	}
	.otherPeople .btmLink a {
		position: relative;
		display: flex;
		align-items: center;
		background: #2C2C2C url(img/common/arrow01.png) no-repeat right 7px bottom 7px / 25px;
	}
	.otherPeople .btmLink a .img {
		width: 48%;	
		height: 39.5vw;
	}
	.otherPeople .btmLink .txt {
		padding: 10px 5px 20px;
		flex: 1;
		line-height: 1.75;
		font-size: 1rem;
		background: transparent;
	}
}
#ourculture.sk .topVisual h2 {
	margin-bottom: 200px;
}
#ourculture.am .topVisual h2 {
	margin-bottom: 150px;
}
#ourculture.kk .topVisual h2 {
	min-height: 233px;
}
@media all and (max-width: 896px) {
	#ourculture.sk .topVisual h2 {
		margin-bottom: 120px;
	}
	#ourculture.am .topVisual h2 {
		margin: 0 -10px 140px 0;
		min-height: 160px;
	}
	#ourculture.kk .topVisual h2 {
		margin-bottom: 87px;
		min-height: inherit;
	}
}
@media all and (max-width: 374px) {
	#ourculture.am .topVisual h2 {
		margin-bottom: 90px;
	}
}

/*------------------------------------------------------------
	company
------------------------------------------------------------*/
#company {
	padding: 73px 0 53px;
}
#company .company {
	margin-bottom: 130px;
}
#company .company table {
	width: 100%;
	border-collapse: collapse;
}
#company .company th,
#company .company td {
	padding: 22px 0 18px;
	letter-spacing: 0.025em;
	line-height: 1.8;
	font-size: 1.5rem;
	text-align: left;
	vertical-align: top;
	border-top: 1px solid #FFF;
}
#company .company th {
	width: 120px;
	font-weight: 500;
}
#company .company p:not(:last-child) {
	margin-bottom: 27px;
}
#company .company strong {
	display: block;
}
#company .company .mapInner .map img {
	width: 100%;
}
#company .company .tabBox dl {
	margin: 5px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#company .company .tabBox dt {
	width: calc(100% - 100px);
}
#company .company .tabBox dd {
	width: 85px;
}
#company .history {
	margin-bottom: 130px;
}
#company .history table {
	width: 100%;
	border-collapse: collapse;
}
#company .history th,
#company .history td {
	padding: 3px 30px;
	letter-spacing: 0.025em;
	line-height: 2;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
}
#company .history tr:nth-child(2n-1) th,
#company .history tr:nth-child(2n-1) td {
	background: #464646;
}
#company .history th {
	width: 200px;
	box-sizing: border-box;
}
#company .trading .note {
	margin-bottom: 10px;
	padding-top: 20px;
	font-size: 1.3rem;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
	border-top: 1px solid #FFF;
}
#company .trading .textBox {
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
	letter-spacing: -0.06em;
	padding-top: 52px;
	border-top: 1px solid #fff;
}
#company .trading .textBox .mar {
	margin-bottom: 60px;
}
#company .trading .textBox .size {
	font-size: 1.3rem;
}
@media all and (min-width: 897px) {
	#company .company strong {
		font-size: 1.7rem;
		font-weight: 700;
		line-height: 1.75;
	}
	#company .company strong:not(:last-child) {
		line-height: 1.75;
		margin-bottom: -3px;
	}
	#company .company th strong {
		font-weight: 500;
	}
	#company .company .mapInner {
		margin-bottom: 60px;
		display: flex;
	}
	#company .company .mapInner .textBox {
		margin-right: 30px;
		width: 330px;
	}
	#company .company .mapInner .map {
		width: 394px;
	}
	#company .company .mapInner .img {
		margin-top: -10px;
		text-align: right;
	}
	#company .company .tabBox {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}
	#company .company .tabBox table {
		width: 424px;
	}
	#company .company .tabBox table:nth-child(2) {
		width: 445px;
	}
	#company .company .tabBox th,
	#company .company .tabBox td {
		padding: 15px 0;
		border-bottom: 1px solid #FFF;
	}
	#company .company .tabBox th {
		width: 150px;
	}
	#company .trading .textBox {
		line-height: 2;
		display: flex;
	}
	#company .trading .textBox p {
		width: 33.33%;
	}
	#company .trading .textBox span {
		display: block;
	}
}
@media all and (max-width: 896px) {
	#company {
		padding: 17px 0 39px;
	}
	#company .company {
		margin-bottom: 50px;
	}
	#company .company table {
		table-layout: fixed;
	}
	#company .company th {
		width: 93px;
	}
	#company .company th,
	#company .company td {
		padding: 14px 15px;
		font-size: 1.19rem;
		line-height: 1.512;
	}
	#company .company .mapInner {
		margin: 38px 27px -5px -97px;
	}
	#company .company p:not(:last-child) {
		margin-bottom: 18px;
	}
	#company .company .mapInner .map {
		margin: 17px 0 0;
	}
	#company .company .mapInner .img {
		margin: 15px 0 30px;
	}
	#company .company .tabBox {
		border-bottom: 1px solid #FFF;
	}
	#company .company .tabBox th {
		width: 72px;
	}
	#company .company .tabBox dl {
		max-width: 220px;
	}
	#company .history {
		margin-bottom: 44px;
	}
	#company .history th,
	#company .history td {
		padding: 2px 0 2px 15px;
		line-height: 2.1;
		font-size: 1rem;
	}
	#company .history th {
		width: 83px;
	}
	#company .trading .headLine01 {
		margin-bottom: 26px;
	}
	#company .trading .note {
		padding-top: 0;
		margin: 0 15px 10px;
		font-size: 0.8rem;
		border-top: none;
	}
	#company .trading .textBox {
		margin: 0 15px;
		line-height: 1.65;
		text-align: justify;
		border-top: none;
		padding-top: 0;
	}
	#company .trading .textBox p:not(:last-child) {
		margin-bottom: 20px;
	}
	#company .trading .textBox span::after {
		content: '／';
	}
	#company .trading .textBox p span:last-child::after {
		display: none;
	}
	#company .company .mapInner .img img {
		width: 100%;
	}
	#company .trading .textBox .size {
		margin-top: 4px;
		font-size: 0.7rem;
		display: block;
	}
	#company .trading .textBox .spTxt::after {
		display: none;
	}
	#company .trading .textBox .mar {
		margin-bottom: 0;
	}
	#company .trading .textBox p {
		line-height: 1.66;
		letter-spacing: -0.02em;
	}
}
@media all and (max-width: 374px) {
	#company .history th,
	#company .history td {
		padding-left: 10px;
	}
	#company .history th {
		width: 70px;
	}
}


/* comBg */
.comBg {
	padding-bottom: 115px;
	background: #000;
	position: relative;
	z-index: 10;
}
@media all and (max-width: 896px) {
	.comBg {
		padding-bottom: 40px;
	}
}

/* mainVisual */
.mainVisual .image {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 736px;
	overflow: hidden;
	z-index: 1;
}
.mainVisual .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mainVisual .height {
	height: 736px;
	position: relative;
	z-index: 11;
}
.mainVisual .title {
	width: 100%;
	padding: 0 90px;
	color: #000000;
	font-size: 3.6rem;
	position: absolute;
	top: 132px;
	left: 0;
	letter-spacing: 0.02em;
	box-sizing: border-box;
}
.mainVisual .title .small {
	margin-bottom: 2px;
	display: block;
	font-size: 2rem;
}
@media all and (max-width: 896px) {
	.mainVisual .height {
		height: 407px;
	}
	.mainVisual .image {
		top: 53px;
		height: 407px;
	}
	.mainVisual .title {
		padding: 0 10px;
		font-size: 2rem;
		top: 21px;
		left: 0;
		letter-spacing: 0.02em;
		text-align: center;
	}
	.mainVisual .title .small {
		font-size: 1.2rem;
	}
}

/* aboutus */
#aboutus p {
	line-height: 2;
	letter-spacing: -0.01em;
}
#aboutus .sec01 {
	margin-bottom: 103px;
	max-width: 824px;
	padding: 33px 75px 40px;
	background-color: #2C2C2C;
	box-sizing: border-box;
}
#aboutus .sec01 .headLine01 {
	margin-bottom: 29px;
	font-size: 2.4rem;
}
#aboutus .sec01 .name {
	margin-top: 28px;
	text-align: right;
	font-size: 1.7rem;
	font-weight: bold;
}
#aboutus #pagePath {
	margin-bottom: 38px;
}
#aboutus .sec02 {
	margin-bottom: 102px;
}
#aboutus .sec03 .headLine03 {
	margin-bottom: 77px;
}
#aboutus .sec03 .comTxtUl p {
	line-height: 2.05;
}
#aboutus .sec03 {
	margin-bottom: 43px;
}
#aboutus .sec04 .headLine02 {
	margin-bottom: 62px;
}
#aboutus .sec04 .listUl {
	margin: 0 -35px;
	display: flex;
	flex-wrap: wrap;
}
#aboutus .sec04 .listUl li {
	margin: 0 35px;
	padding: 32px 24px 19px;
	width: calc(33.33% - 70px);
	border: 1px solid #fff;
	box-sizing: border-box;
}
#aboutus .sec04 .listUl .headLine03 {
	margin-bottom: 25px;
}
#aboutus .sec04 {
	margin-bottom: 85px;
}
#aboutus .sec05 {
	padding: 39px 0 45px;
	background-color: #2C2C2C;
	text-align: center;
}
#aboutus .sec05 .headLine03 {
	margin-bottom: 30px;
	font-size: 2.4rem;
}
#aboutus .sec05 p {
	margin-bottom: 30px;
	letter-spacing: 0;
}
#aboutus .sec05 p:last-child {
	margin-bottom: 0;
}
@media all and (max-width: 896px) {
	#aboutus .sec01 {
		margin-bottom: 6px;
		max-width: inherit;
		padding: 27px 26px;
		background-color: transparent;
	}
	#aboutus .sec01 .headLine01 {
		margin-bottom: 14px;
		font-size: 1.5rem;
	}
	#aboutus p {
		line-height: 1.66;
	}
	#aboutus .sec01 .name {
		margin-top: 18px;
		font-size: 1.2rem;
	}
	#aboutus .sec02 {
		margin-bottom: 42px;
	}
	#aboutus .sec03 .headLine03 {
		margin-bottom: 27px;
	}
	#aboutus .sec04 .headLine02 {
		margin-bottom: 40px;
	}
	#aboutus .sec03 .comTxtUl p {
		line-height: 2;
	}
	#aboutus .sec04 .listUl {
		display: block;
		margin: 0;
	}
	#aboutus .sec04 .listUl li {
		margin: 0 0 20px;
		padding: 13px 10px 17px;
		width: auto;
		text-align: center;
	}
	#aboutus .sec04 .listUl li:last-child {
		margin-bottom: 0;
	}
	#aboutus .sec04 .content {
		margin: 0 29px;
	}
	#aboutus .sec04 .listUl .headLine03 {
		margin-bottom: 11px;
		font-size: 2.4rem;
	}
	#aboutus .sec04 .listUl p {
		line-height: 1.9;
	}
	#aboutus .sec04 {
		margin-bottom: 48px;
	}
	#aboutus .sec05 {
		padding: 26px 26px 42px;
		text-align: left;
	}
	#aboutus .sec05 .headLine03 {
		margin-bottom: 23px;
		font-size: 1.65rem;
	}
	#aboutus .sec05 p {
		margin-bottom: 20px;
		line-height: 1.9;
	}
	#aboutus .sec05 p:last-child {
		margin-bottom: 0;
	}
}


/* contact */
#contact {
	padding: 73px 0 126px;
}
#contact p {
	line-height: 1.8;
	letter-spacing: 0.05em;
}
#contact #pagePath {
	margin-bottom: 97px;
}
#contact .content {
	max-width: 750px;
}
#contact .headLine02 {
	margin-bottom: 39px;
}
#contact .headLine01 {
	margin-bottom: 76px;
}
#contact .errorTxt {
	margin-bottom: 48px;
	color: #FF0000;
	font-size: 1.7rem;
}
#contact .errorTxt strong {
	display: block;
}
#contact .topTxt {
	margin-bottom: 33px;
}
#contact .formDl {
	margin-bottom: 43px;
	font-size: 1.7rem;
	letter-spacing: 0.02em;
}
#contact .formDl dt {
	margin-bottom: 11px;
	font-weight: bold;
}
#contact .formDl dt .must {
	color: #FF0000;
}
#contact .formDl dd {
	margin: 0 0 28px 2px;
}
#contact .formDl dd:last-child {
	margin-bottom: 0;
}
#contact .formDl .mar {
	margin-bottom: 52px;
}
#contact .formBox input[type="text"],
#contact .formBox textarea,
#contact .formBox select,
#contact .formBox input[type="email"],
#contact .formBox input[type="tel"] {
	padding-left: 16px;
	width: 100%;
	height: 53px;
	color: #fff;
	font-size: 1.5rem;
	border-radius: 0;
	border: none;
	background-color: #2C2C2C;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
}
#contact .formBox select {
	padding-right: 40px;
	width: 353px;
	height: 38px;
	border-radius: 50px;
	background: #2C2C2C url("img/common/select_icon.png") no-repeat right 20px center;
	background-size: 11px auto;
}
#contact .formBox textarea {
	padding: 8px 16px;
	height: 120px;
}
#contact .btmTxt {
	margin: 42px 0 47px;
	text-align: center;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 2.15;
}
#contact .btmTxt a {
	text-decoration: underline;
}
#contact .agreeTxt {
	margin-bottom: 47px;
	text-align: center;
	font-weight: bold;
	font-size: 1.7rem;
}
#contact .agreeTxt input[type="checkbox"] {
    display: none;
}
#contact .agreeTxt input[type="checkbox"] + span {
	display: inline-block;
	vertical-align: top;
    line-height: 16px;
    padding: 0 0 4px 33px;
	border-radius: 0;
	border: none;
	background: url("img/common/check_icon01.png") no-repeat left top;
	background-size: 16px auto;
	cursor: pointer;
}
#contact .agreeTxt input[type="checkbox"]:checked + span {
	background-image: url("img/common/check_icon02.png");
}
#contact .submit input {
	width: 330px;
	height: 77px;
	color: #000;
	font-weight: bold;
	font-size: 1.8rem;
	background-color: #fff;
	border-radius: 0;
	border: none;
	cursor: pointer;
	letter-spacing: 0.03em;
	-webkit-transition: .3s;
	transition: .3s;
	appearance: none;
	-webkit-appearance: none;
}
#contact .submit li {
	margin-bottom: 15px;
	text-align: center;
}
#contact .submit li:last-child {
	margin-bottom: 0;
}
#contact .thanksBox {
	padding: 50px 20px;
	text-align: center;
	border: 1px solid #fff;
}
#contact .thanksBox p {
	margin-bottom: 30px;
}
#contact .thanksBox p:last-child {
	margin-bottom: 0;
}
#contact .thanksBox a {
	text-decoration: underline;
}
#contact .radioUl {
	padding: 24px 29px 15px;
	background-color: #2c2c2c;
}
#contact .radioUl li {
	margin-bottom: 7px;
}
#contact .radioUl li:last-child {
	margin-bottom: 0;
}
#contact .radioUl input[type="radio"] {
    display: none;
}
#contact .radioUl input[type="radio"] + span {
	display: inline-block;
	vertical-align: top;
    line-height: 17px;
    padding: 0 0 4px 34px;
	border-radius: 0;
	border: none;
	background: url("img/common/radio_icon01.png") no-repeat left top;
	background-size: 17px auto;
	cursor: pointer;
}
#contact .radioUl input[type="radio"]:checked + span {
	background-image: url("img/common/radio_icon02.png");
}
@media all and (min-width: 897px) {
	#contact .btmTxt a:hover {
		text-decoration: none;
	}
	#contact .submit input:hover {
		opacity: 0.7;
	}
	#contact .thanksBox p a:hover {
		text-decoration: none;
	}
}
@media all and (max-width: 896px) {
	#contact .headLine01 {
		margin-bottom: 31px;
		font-size: 1.85rem;
	}
	#contact .headLine02 {
		margin-bottom: 31px;
	}
	#contact .content {
		max-width: inherit;
		margin: 0 13px;
	}
	#contact p {
		font-size: 1rem;
	}
	#contact .errorTxt {
		margin-bottom: 30px;
		font-size: 1.1rem;
	}
	#contact .topTxt {
		margin-bottom: 21px;
	}
	#contact .formDl {
		margin-bottom: 32px;
		font-size: 1.25rem;
	}
	#contact .formDl dt {
		margin-bottom: 7px;
	}
	#contact .formDl dd {
		margin: 0 0 16px 0;
	}
	#contact .formBox input[type="text"],
	#contact .formBox textarea,
	#contact .formBox select,
	#contact .formBox input[type="email"],
	#contact .formBox input[type="tel"] {
		padding-left: 12px;
		height: 34px;
		font-size: 1rem;
	}
	#contact .formBox select {
		width: 66%;
		height: 24px;
		background-position: right 13px center;
		background-size: 7px auto;
	}
	#contact .formDl .mar {
		margin-bottom: 34px;
	}
	#contact .formBox textarea {
		height: 93px;
		padding: 8px 12px;
	}
	#contact .notes {
		font-size: 0.9rem;
		line-height: 1.94;
	}
	#contact .btmTxt {
		margin: 23px 0 17px;
		font-size: 1.1rem;
		line-height: 1.6;
	}
	#contact .agreeTxt {
		margin-bottom: 33px;
		font-size: 1.1rem;
	}
	#contact .agreeTxt input[type="checkbox"] + span {
		padding-left: 22px;
		background-size: 11px auto;
		background-position: left top 3px;
	}
	#contact .submit input {
		width: 265px;
		height: 62px;
		font-size: 1.5rem;
	}
	#contact {
		padding: 22px 0 61px;
	}
	#contact .thanksBox {
		padding: 40px 20px;
	}
	#contact .radioUl {
		padding: 10px 19px 9px;
	}
	#contact .radioUl input[type="radio"] + span {
		line-height: 13px;
		padding: 1px 0 4px 25px;
		background-size: 13px auto;
	}
	#contact .radioUl li {
		margin-bottom: 4px;
	}
}



/* creative */
#creative .mainVisual .image {
	height: 656px;
}
#creative .mainVisual .height {
	height: 656px;
}
#creative .brandingBox .h2Title {
	margin-bottom: 37px;
	color: #7A7A7A;
	text-align: center;
	font-family:"futura-pt";
	line-height: 1;
	font-size: 6.6rem;
}
#creative #pagePath {
	margin-bottom: 21px;
}
#creative .brandingBox .textBox {
	margin-bottom: 66px;
	display: flex;
	justify-content: space-between;
}
#creative .brandingBox .textBox .headLine03 {
	margin: -6px 24px 0 0;
	width: 470px;
	font-size: 2.4rem;
	text-align: left;
	line-height: 1.875;
}
#creative .brandingBox .rightBox {
	flex: 1;
	line-height: 2;
	text-align: justify;
}
#creative .brandingBox .borderBox {
	margin: 0 auto;
	padding-bottom: 37px;
	max-width: 600px;
	box-sizing: border-box;
	border: 1px solid #969696;
	box-sizing: border-box;
	background-color: #1F1F1F;
}
#creative .brandingBox .borderBox .h3Title {
	margin-bottom: 31px;
	padding: 11px 8px 9px;
	text-align: center;
	font-size: 2rem;
	background-color: #000000;
}
#creative .brandingBox .borderBox ul {
	text-align: center;
	line-height: 1.66;
}
#creative .brandingBox .borderBox ul li {
	margin-bottom: 25px;
	position: relative;
}
#creative .brandingBox .borderBox ul li::after {
	color: #AD0306;
	position: absolute;
	bottom: -26px;
	left: 50%;
	content: "▼";
	transform: translateX(-50%);
}
#creative .brandingBox .borderBox ul li:last-child {
	margin-bottom: 0;
}
#creative .brandingBox .borderBox ul li:last-child::after {
	display: none;
}
#creative .approachBox  {
	padding: 79px 0 141px;
	position: relative;
}
#creative .approachBox .line01 {
	width: 100%;
	position: absolute;
	top: -22px;
	left: 0;
}
#creative .approachBox .headLine04 {
	margin-bottom: 45px;
	font-size: 4.8rem;
	letter-spacing: 0.03em;
}
#creative .approachBox .headLine04 .col {
	font-size: 8rem;
}
#creative .approachBox p {
	line-height: 2;
}
#creative .approachBox .widTxt {
	margin: 0 auto 199px;
	max-width: 494px;
}
#creative .approachBox .imgBox {
	display: flex;
	justify-content: space-between;
}
#creative .approachBox .imgBox .textBox {
	flex: 1;
}
#creative .approachBox .imgBox .photo {
	width: 442px;
	margin: 8px 0 0 36px;
}
#creative .approachBox .imgBox .strong{
	font-size: 1.7rem;
	font-weight: bold;
	line-height: 1.94;
}
#creative .approachBox .enTxt {
	margin-top: 15px;
	color: #7A7A7A;
	font-family:"futura-pt";
	font-size: 4.8rem;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.01em;
}
#creative .approachBox .innerBox {
	margin-bottom: 150px;
}
#creative .approachBox .imgUl {
	padding-top: 14px;
	margin: 0 -12px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#creative .approachBox .imgUl li {
	margin: 0 12px;
	width: 156px;
	text-align: center;
	font-weight: bold;
}
#creative .approachBox .imgUl p {
	margin-top: 3px;
}
#creative .approachBox .inner03 .centerTxt,
#creative .approachBox .inner06 .centerTxt {
	margin-bottom: 52px;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 2 !important;
}
#creative .approachBox .txtUl {
	display: flex;
	justify-content: center;
	flex-wrap: inherit;
}
#creative .approachBox .txtUl li {
	margin: 0 10px;
	padding: 15px 0 23px;
	color: #000000;
	font-size: 2rem;
	width: 262px;
	background-color: #fff;
	font-weight: bold;
	box-sizing: border-box;
	text-align: center;
}
#creative .approachBox .txtUl .ttl {
	margin-bottom: 3px;
	color: #6B6B6B;
	font-size: 1.5rem;
}
#creative .approachBox .txtUl p {
	line-height: 1.5;
}
#creative .approachBox .inner05 .imgBox .photo {
	margin: 8px 50px 0 0;
	order: -2;
}
#creative .inner06 .listUl {
	padding-top: 7px;
	margin-bottom: 53px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#creative .inner06 .listUl li {
	margin: 0 26px;
	font-weight: bold;
	text-align: center;
}
#creative .inner06 .listUl p {
	line-height: 1.66;
}
#creative .inner06 .listUl img {
	width: 114px;
}
#creative .inner06 .listUl .image {
	margin-bottom: 15px;
}
#creative .expectedBox {
	margin: 0 auto;
	padding: 0 32px 40px;
	max-width: 818px;
	border: 1px solid #fff;
	background: #1F1F1F;
	box-sizing: border-box;
}
#creative .expectedBox .headLine03 {
	margin: 0 -32px 31px;
	padding: 18px 0 16px;
	font-size: 2.2rem;
	background-color: #000;
} 
#creative .expectedBox .listUl02 li {
	margin-bottom: 7px;
	letter-spacing: -0.02em;
	padding-left: 2em;
	text-indent: -2em;
}
#creative .expectedBox .listUl02 li:last-child {
	margin-bottom: 0;
}
#creative .approachBox .inner06 {
	margin-bottom: 94px;
}
#creative .creativeBox .visualBox {
	margin-bottom: 59px;
	padding: 81px 0 59px;
	background: url("img/creative/bg.jpg") no-repeat center center / cover;
}
#creative .creativeBox .visualBox .headLine04 {
	color: #FFFFFF;
	text-align: center;
	opacity: 0.7;
	font-size: 6.6rem;
}
#creative .creativeBox .comTextBox .innerBox {
	font-size: 1.8rem;
	max-width: 328px;
	padding: 0 0 0 26px;
	margin: 30px auto 0;
}
#creative .creativeBox .comTextBox .innerBox p {
	line-height: 2.66;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
#creative .creativeBox .centerTxt {
	margin-bottom: 77px;
	font-size: 2rem;
	line-height: 2.1 !important;
}
#creative .creativeBox .listUl {
	margin-top: -69px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}
#creative .creativeBox .listUl::after {
	margin-top: 61px;
	width: 114px;
	height: 114px;
	background-color: #323232;
	position: absolute;
	top: 50%;
	left: 50%;
	content: "";
	transform: translate(-50%,-50%);
	z-index: -1;
}
#creative .creativeBox .listUl li {
	margin-top: 69px;
	width: calc(50% - 34px);
	padding: 32px 31px 25px;
	min-height: 252px;
	box-sizing: border-box;
	border: 1px solid #fff;
	position: relative;
}
#creative .creativeBox .listUl .headLine04 {
	font-size: 4rem;
	margin: 0 0 23px 54px;
	position: relative;
	z-index: 10;
}
#creative .creativeBox .listUl .headLine04 .col {
	font-size: 4rem;
	vertical-align: 0;
}
#creative .creativeBox .listUl .headLine04::before {
	width: 66px;
	height: 12px;
	position: absolute;
	top: 5px;
	left: -85px;
	background: url("img/creative/icon.png") no-repeat left top / 100% 100%;
	content: "";
}
#creative .creativeBox .listUl p {
	line-height: 2;
}
#creative .creativeBox .listUl .photo {
	width: 151px;
	position: absolute;
	top: 0;
	right: 0;
}
#creative .creativeBox .comBanner {
	margin-top: 111px;
}
#creative .comBg {
	padding-bottom: 120px;
}
@media all and (max-width: 896px) {
	#creative .mainVisual .height {
		height: 374px;
	}
	#creative .mainVisual .image {
		height: 374px;
	}
	#creative .greyBg {
		padding-top: 30px;
	}
	#creative .content {
		margin: 0 26px;
	}
	#creative .brandingBox .h2Title {
		margin-bottom: 24px;
		font-size: 4.25rem;
	}
	#creative .brandingBox .textBox {
		margin-bottom: 26px;
		display: block;
	}
	#creative .brandingBox .textBox .headLine03 {
		margin: 0 0 22px;
		width: auto;
		font-size: 1.3rem;
		line-height: 1.73;
		text-align: center;
	}
	#creative .brandingBox .rightBox {
		line-height: 1.66;
		text-align: justify;
	}
	#creative .brandingBox .borderBox .h3Title {
		margin-bottom: 20px;
		padding: 6px 8px 6px;
		font-size: 1.3rem;
	}
	#creative .brandingBox .borderBox ul {
		line-height: 1.73;
		font-size: 1rem;
	}
	#creative .brandingBox .borderBox ul li {
		margin-bottom: 18px;
	}
	#creative .brandingBox .borderBox ul li::after {
		bottom: -18px;
	}
	#creative .brandingBox .borderBox {
		padding-bottom: 18px;
		max-width: inherit;
	}
	#creative .approachBox .headLine04 {
		margin-bottom: 24px;
		font-size: 3.483rem;
	}
	#creative .approachBox .headLine04 .col {
		font-size: 5.8rem;
	}
	#creative .approachBox {
		padding: 59px 0 36px;
	}
	#creative .approachBox p {
		line-height: 1.66;
	}
	#creative .approachBox .widTxt {
		margin: 0 auto 78px;
		max-width: inherit;
	}
	#creative .approachBox .imgBox {
		display: block;
	}
	#creative .approachBox .imgBox .photo {
		width: auto;
		margin: 27px 2px 0;
	}
	#creative .approachBox .imgBox .photo img {
		width: 100%;
	}
	#creative .approachBox .enTxt {
		margin-top: 13px;
		font-size: 3.3rem;
	}
	#creative .approachBox .innerBox {
		margin-bottom: 90px;
	}
	#creative .approachBox .imgUl {
		margin-top: -12px;
		padding-top: 23px;
		font-size: 0.93rem;
	}
	#creative .approachBox .imgUl li {
		margin: 12px 8px 0;
		width: 96px;
	}
	#creative .approachBox .imgUl p {
		margin-top: 4px;
	}
	#creative .approachBox .inner03 .centerTxt,
	#creative .approachBox .inner06 .centerTxt {
		margin-bottom: 24px;
		font-size: 1rem;
		line-height: 1.7 !important;
	}
	#creative .approachBox .txtUl {
		display: block;
	}
	#creative .approachBox .txtUl li {
		margin: 0 auto 12px;
		padding: 13px 5px 11px 21px;
		font-size: 1.3rem;
		width: 204px;
		display: flex;
		text-align: left;
	}
	#creative .approachBox .txtUl li:last-child {
		margin-bottom: 0;
	}
	#creative .approachBox .txtUl .ttl {
		margin: 0 6px 0 0;
		font-size: 0.975rem;
	}
	#creative .approachBox .txtUl .txt {
		margin-top: -2px;
		flex: 1;
	}
	#creative .approachBox .imgBox .strong {
		font-size: 1.05rem;
		font-weight: normal;
		line-height: 1.66;
		text-align: center;
	}
	#creative .approachBox .inner04 .enTxt,
	#creative .approachBox .inner05 .enTxt,
	#creative .approachBox .inner06 .enTxt {
		margin-top: 7px;
		font-size: 3.3rem;
		text-align: center;
	}
	#creative .approachBox .inner05 .imgBox .photo {
		margin: 27px 2px 0;
	}
	#creative .approachBox .inner06 .centerTxt {
		margin-bottom: 12px;
	}
	#creative .inner06 .listUl {
		padding-top: 26px;
		margin: 0 -13px 29px;
		font-size: 0.8rem;
	}
	#creative .inner06 .listUl li {
		margin: 0;
		width: 25%;
	}
	#creative .inner06 .listUl img {
		width: 62px;
	}
	#creative .inner06 .listUl .image {
		margin-bottom: 10px;
	}
	#creative .expectedBox .headLine03 {
		margin: 0 -12px 13px;
		padding: 11px 0 10px;
		font-size: 1.32rem;
		background-color: #000;
	}
	#creative .expectedBox {
		padding: 0 12px 14px;
		max-width: inherit;
	}
	#creative .expectedBox .listUl02 li {
		margin-bottom: 0;
		line-height: 1.66;
	}
	#creative .approachBox .inner06 {
		margin-bottom: 47px;
	}
	#creative .creativeBox .visualBox .headLine04 {
		font-size: 3.3rem;
	}
	#creative .creativeBox .comTextBox .innerBox {
		font-size: 1.05rem;
		max-width: 183px;
		padding: 3px 0 0 16px;
		margin: 28px auto 0;
	}
	#creative .creativeBox .visualBox {
		margin-bottom: 30px;
		padding: 48px 0 60px;
		background-image: url("img/creative/sp_bg.jpg");
	}
	#creative .creativeBox .comTextBox .innerBox p {
		line-height: 2.7;
	}
	#creative .creativeBox .centerTxt {
		margin-bottom: 25px;
		font-size: 1rem;
		line-height: 1.73 !important;
	}
	#creative .creativeBox .comLine {
		margin-bottom: 21px;
	}
	#creative .creativeBox .listUl {
		margin: 0 12px;
		display: block;
		font-size: 1rem;
	}
	#creative .creativeBox .listUl li {
		margin: 0 0 14px;
		width: auto;
		padding: 21px 20px 17px;
		min-height: inherit;
	}
	#creative .creativeBox .listUl li:last-child {
		margin-bottom: 0;
	}
	#creative .creativeBox .listUl .headLine04 {
		margin: 0 0 15px 34px;
		font-size: 2.6rem;
	}
	#creative .creativeBox .listUl .headLine04 .col {
		font-size: 2.6rem;
	}
	#creative .creativeBox .listUl p {
		line-height: 1.75;
	}
	#creative .creativeBox .listUl .headLine04::before {
		width: 43px;
		height: 7px;
		top: 4px;
		left: -55px;
	}
	#creative .creativeBox .listUl .photo {
		width: 96px;
		right: -5px;
	}
	#creative .creativeBox .listUl::after {
		display: none;
	}
	#creative .creativeBox .comBanner {
		margin-top: 55px;
	}
	#creative .comBg {
		padding-bottom: 36px;
	}
	#creative .approachBox .line01 {
		top: 13px;
	}
}



/* csr */
#csr p {
	line-height: 2;
}
#csr .mainVisual .height {
	height: 40.58vw;
}
#csr .mainVisual .image {
	height: 40.58vw;
}
#csr #pagePath {
	margin-bottom: 47px;
}
#csr .comLine {
	margin-bottom: 54px;
}
#csr .sec01 {
	margin-bottom: 87px;
}
#csr .sec01 .headLine03 {
	margin-bottom: 21px;
	font-size: 3.5rem;
}
#csr .sec01 .sdgsImg {
	margin-bottom: 23px;
	text-align: center;
}
#csr .sec01 .centerTxt {
	margin-bottom: 70px;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 2 !important;
}
#csr .titleBox {
	margin-bottom: 34px;
	padding: 19px 4px 17px;
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#csr .titleBox .imgUl {
	display: flex;
	flex: 1;
	justify-content: flex-end;
}
#csr .titleBox .imgUl li {
	margin-left: 19px;
	width: 69px;
}
#csr .titleBox .title {
	margin: -5px 0 0 -13px;
	color: #72C7F2;
	font-size: 2rem;
	line-height: 1.75;
	display: flex;
	align-items: center;
	letter-spacing: 0.02em;
}
#csr .titleBox .title .num {
	margin-right: 16px;
	width: 69px;
}
#csr .titleBox .title .txt {
	flex: 1;
}
#csr .sec01 .innerBox {
	margin: 0 0 76px 76px;
}
#csr .sec01 .innerBox:last-child {
	margin-bottom: 0;
}
#csr .sec01 .flexBox {
	display: flex;
	justify-content: space-between;
}
#csr .sec01 .flexBox .rightBox {
	width: calc(50% + 40px);
	text-align: justify;
}
#csr .sec01 .flexBox .leftBox {
	margin-right: 10px;
	flex: 1;
}
#csr .sec01 .flexBox p {
	margin-bottom: 34px;
}
#csr .sec01 .flexBox p:last-child {
	margin-bottom: 0;
}
#csr .sec01 .bold {
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.75;
}
#csr .sec01 .btn {
	margin-top: -17px;
}
#csr .sec01 .logo {
	margin: 0 78px 95px 0;
	padding-top: 4px;
	text-align: center;
}
#csr .sec01 .logo a:hover {
	opacity: 0.7;
}
#csr .sec01 .title02 {
	padding: 2px 0 1px;
	font-size: 1.7rem;
	font-weight: bold;
}
#csr .sec01 .txtUl {
	font-size: 1.7rem;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
}
#csr .sec01 .txtUl li {
	padding-right: 15px;
	width: calc(50% - 40px);
	box-sizing: border-box;
}
#csr .sec01 .txtUl p {
	line-height: 2.05;
}
#csr .sec02 .headLine01 {
	margin-bottom: 57px;
}
#csr .sec02 .title {
	margin-bottom: 20px;
	font-size: 2rem;
}
#csr .sec02 p {
	margin-bottom: 35px;
}
#csr .sec02 p:last-child {
	margin-bottom: 0;
}
#csr .sec02 .btmTxt {
	text-align: right;
}
#csr .listUl {
	line-height: 2;
}
#csr .listUl li {
	padding-left: 2.2em;
	text-indent: -2.2em;
}
#csr .dataUl {
	margin: 38px 0 33px;
	text-align: right;
}
#csr .dataUl span {
	display: inline-block;
	vertical-align: top;
}
#csr .dataUl li {
	margin-bottom: 7px;
}
#csr .dataUl li:last-child {
	margin-bottom: 0;
}
#csr .dataUl .txt {
	min-width: 140px;
}
#csr .dataUl .ttl {
	min-width: 83px;
	text-align: left;
}
#csr .sec02 {
	margin-bottom: 41px;
}
#csr .sec03 .headLine03 {
	margin-bottom: 28px;
	font-size: 2rem;
	text-align: left;
}
#csr .sec03 .txtDl {
	margin: 0 0 49px 5px;
}
#csr .sec03 .txtDl dt {
	margin-bottom: 5px;
	padding-left: 2.2em;
	text-indent: -2.2em;
}
#csr .sec03 .txtDl dd {
	margin: 0 0 31px 35px;
}
#csr .sec03 .txtDl dd:last-child {
	margin-bottom: 0;
}
#csr .borTxt {
	margin-top: 72px;
	padding-top: 27px;
	border-top: 1px solid #fff;
}
#csr .borTxt a {
	text-decoration: underline;
}
#csr .borTxt a[href^="tel:"] {
	text-decoration: none !important;
}
@media all and (min-width: 897px) {
	#csr .borTxt a:hover {
		text-decoration: none;
	}
	#csr .sec01 .btn a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#csr .mainVisual .height {
		height: 40.5vw;
	}
	#csr .mainVisual .image {
		height: 40.5vw;
	}
	#csr .mainVisual {
		margin-bottom: 28px;
	}
	#csr .content {
		margin: 0 17px;
	}
	#csr .sec01 .headLine03 {
		margin-bottom: 12px;
		font-size: 2.275rem;
	}
	#csr .comLine {
		margin-bottom: 28px;
	}
	#csr .sec01 .sdgsImg {
		margin: 0 14px 15px 0;
		text-align: center;
	}
	#csr .sec01 .sdgsImg img {
		width: 100%;
		max-width: 330px;
	}
	#csr .sec01 .centerTxt {
		margin-bottom: 37px;
		font-size: 1rem;
		line-height: 2 !important;
	}
	#csr .titleBox {
		margin: 0 -17px 19px;
		padding: 18px 4px 22px;
	}
	#csr .titleBox .title {
		font-size: 1.3rem;
	}
	#csr .titleBox .title .num {
		margin-right: 8px;
		width: 45px;
	}
	#csr .titleBox .title {
		margin: 0;
		font-size: 1.3rem;
		line-height: 1.7;
		letter-spacing: 0.02em;
	}
	#csr .titleBox .imgUl {
		margin-right: 4px;
		flex-wrap: wrap;
	}
	#csr .titleBox .imgUl li {
		margin: 0 10px 0 0;
		width: 45px;
	}
	#csr .titleBox.box01 {
		display: block;
	}
	#csr .titleBox.box01 .imgUl {
		justify-content: flex-start;
		margin: 19px 0 0 46px;
	}
	#csr .titleBox.box01 .imgUl li {
		margin-right: 13px;
	}
	#csr .sec01 .innerBox {
		margin: 0 0 30px 0;
	}
	#csr .sec01 .flexBox {
		display: block;
	}
	#csr .sec01 .flexBox .leftBox {
		margin: 0 0 19px;
		display: flex;
		justify-content: space-between;
	}
	#csr .sec01 .logo {
		margin: 0;
		width: 70px;
		padding-top: 0;
		text-align: left;
	}
	#csr .sec01 .logo img {
		width: 70px;
	}
	#csr .sec01 .bold {
		margin: 0 !important;
		font-size: 1.3rem;
		line-height: 1.61;
	}
	#csr .sec01 .flexBox .rightBox {
		width: auto;
	}
	#csr p {
		line-height: 1.66;
	}
	#csr .sec01 .rightBox .bold {
		margin-bottom: 12px !important;
		font-size: 1.2rem;
		line-height: 1.75;
	}
	#csr .sec01 .flexBox p {
		margin-bottom: 30px;
	}
	#csr .sec01 .btn {
		margin-top: -10px;
		text-align: center;
	}
	#csr .sec01 .btn img {
		width: 100%;
		max-width: 253px;
	}
	#csr .sec01 .spFlex {
		margin: -2px 0 26px 10px;
		display: flex;
		justify-content: space-between;
	}
	#csr .sec01 .title02 {
		padding: 0;
		width: 32%;
		font-size: 1.2rem;
	}
	#csr .sec01 .txtUl {
		margin: -2px -10px 0 0;
		font-size: 1.2rem;
		display: block;
		flex: 1;
	}
	#csr .sec01 .txtUl li {
		padding-right: 0;
		width: auto;
	}
	#csr .sec01 .txtUl p {
		line-height: 1.95;
	}
	#csr .sec02 .headLine01 {
		margin-bottom: 57px;
		font-size: 1.85rem;
	}
	#csr .sec02 .title {
		margin-bottom: 18px;
		font-size: 1.4rem;
	}
	#csr .sec01 {
		margin-bottom: 25px;
	}
	#csr .sec02 .headLine01 {
		margin: 0 0 22px;
		font-size: 1.85rem;
	}
	#csr .sec02 p {
		margin-bottom: 17px;
		letter-spacing: -0.02em;
	}
	#csr .listUl {
		line-height: 1.66;
	}
	#csr .dataUl {
		margin: 16px 0 13px;
	}
	#csr .dataUl .txt {
		min-width: 90px;
	}
	#csr .dataUl .ttl {
		min-width: 74px;
	}
	#csr .dataUl li {
		margin-bottom: 2px;
	}
	#csr .sec02 {
		margin-bottom: 27px;
	}
	#csr .sec03 .headLine03 {
		margin-bottom: 19px;
		font-size: 1.4rem;
		text-align: left;
	}
	#csr .sec03 .txtDl {
		margin: 0 0 29px -2px;
		font-size: 1rem;
	}
	#csr .sec03 .txtDl dd {
		margin: 0 0 3px 18px;
	}
	#csr .sec03 .txtDl dt {
		margin-bottom: 3px;
	}
	#csr .sec03 .txtDl .listUl li {
		margin-bottom: 1px;
	}
	#csr .borTxt {
		margin: 31px -17px 0;
		padding: 21px 16px 0;
	}
}
@media all and (max-width: 374px) {
	#csr .sec01 .headLine03 {
		font-size: 2rem;
	}
	#csr .titleBox .imgUl li {
		width: 40px;
	}
	#csr .sec01 .logo {
		width: 82px;
	}
}

#csr .sec03 .textList {
	margin: 22px 0 63px;
}
#csr .sec03 .textList li {
	padding-left: 32px;
	position: relative;
	line-height: 2;
}
#csr .sec03 .textList li .mark {
	position: absolute;
	left: 0;
	top: 0;
}
#csr .sec03 .textList .indentTxt {
	padding-left: 7.4em;
	display: block;
    text-indent: -7.4em;
}
@media all and (max-width: 896px) {
	#csr .sec03 .headLine03 {
		line-height: 1.5;
	}
	#csr .sec03 .textList {
		margin: 18px 0 26px;
	}
	#csr .sec03 .textList li {
		padding-left: 22px;
		line-height: 1.66;
	}
}

/*------------------------------------------------------------
	recruite
------------------------------------------------------------*/
#recruite .mainVisual {
	height: 745px;
	position: relative;
	z-index: 11;
}
#recruite .mainVisual h2 {
	margin-bottom: 20px;
	padding-top: 66px;
	height: 138px;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
	color: #1E1E1E;
	font-size: 2rem;
	letter-spacing: 0.05em;
	text-align: center;
	background-color: rgba(255,255,255,0.6);
	box-sizing: border-box;
}
#recruite .mainVisual h2 .en {
	display: inline-block;
	margin-right: 33px;
	font-size: 3.578rem;
	font-family:"futura-pt";
	font-weight: 500;
	vertical-align: -5px;
	letter-spacing: 0;
}
#recruite .mainVisual h2 .en:first-letter {
	color: #26AAF2;
	font-weight: 500;
	font-size: 5.3rem;
	line-height: 1.4;
	vertical-align: -3px;
}
#recruite .mainVisual .img {
	padding: 0 20px;
	margin: 0 auto 200px;
	max-width: 1200px;
	box-sizing: border-box;
}
#recruite .mainVisual .img img {
	width: 258px;
}
#recruite .mainVisual p {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 2;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
}
#recruite .backBg {
	position: relative;
	z-index: 10;
	background-color: #000;
}
#recruite .mainImg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 745px;
	overflow: hidden;
	z-index: 1;
}
#recruite .mainImg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#recruite #pagePath {
	padding-top: 12px;
	margin-bottom: -34px;
	color: #000;
	position: relative;
	z-index: 10;
}
#recruite #pagePath a {
	color: #000;
}
#recruite .worklife {
	position: relative;
}
#recruite .worklife .numTxt {
	top: 92px;
	position: absolute;
	right: 50%;
	width: 494px;
	z-index: 2;
}
#recruite .worklife .numTxt .txt {
	padding: 11px 34px 2px 30px;
	display: inline-block;
	position: relative;
	z-index: 2;
	color: #000;
	font-size: 1.8rem;
	font-weight: bold;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
}
#recruite .worklife .numTxt .num {
	position: absolute;
	left: 55px;
	bottom: -40px;
	font-size: 13.645rem;
	font-family: 'Futura';
	line-height: 1;
}
#recruite .worklife .img {
	position: relative;
}
#recruite .worklife .img span {
	position: absolute;
	left: 35vw;
	top: 9%;
	width: 37.5vw;
}
#recruite .worklife .img .txt01 {
	top: 10%;
	left: 31.75vw;
}
#recruite .worklife .img span img {
	width: 100%;
}
#recruite .worklife .comLink {
	position: absolute;
	width: 494px;
	bottom: 45px;
	left: 50%;
}
#recruite .whiteBg {
	padding: 70px 10px 72px;
	color: #000;
	background-color: #FFF;
}
#recruite .whiteBg p {
	margin-bottom: 30px;
	font-size: 1.7rem;
	line-height: 1.8;
	font-feature-settings: "palt";
-moz-font-feature-settings: "palt";
}
#recruite .whiteBg .text {
	margin-bottom: 35px;
}
#recruite .whiteBg p:last-child {
	margin-bottom: 0;
}
#recruite .whiteBg p strong {
	font-weight: bold;
}
#recruite .whiteBg p .indent {
	display: inline-block;
	margin-left: 1em;
}
#recruite .imgBox {
	margin: 0 0 35px 210px;
	display: flex;
}
#recruite .imgBox .photoBox {
	margin-right: 30px;
	width: 218px;
}
#recruite .imgBox .textBox {
	margin-top: -5px;
	flex: 1;
}
#recruite .imgBox p {
	margin-bottom: 20px;
	font-weight: 600;
	line-height: 1.647;
}
#recruite .imgBox p:last-child {
	margin-bottom: 0;
}
#recruite .imgBox .sml {
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.8;
}
#recruite .h3Ttl {
	margin-bottom: 45px;
}
#recruite .smlContent:not(:last-child) {
	margin-bottom: 65px;
}
#recruite .txtInner {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#recruite .txtInner p {
	margin-bottom: 0;
	width: 500px;
}
#recruite .txtInner .comLink a {
	padding-right: 70px;
	width: 360px;
	border: 1px solid #000;
}
#recruite .txtInner .comLink a::after {
	width: 48px;
}
#recruite .person {
	padding: 75px 10px 128px;
}
#recruite .person .headLine06 {
	background: #2C2C2C;
	letter-spacing: 0.05em;
}
#recruite .person .list {
	margin-bottom: 85px;
	display: flex;
	flex-wrap: wrap;
}
#recruite .person .list li {
	width: 50%;
}
#recruite .person .list a {
	position: relative;
	display: block;
}
#recruite .person .list img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#recruite .person .list .txt {
	padding: 0 20px;
	width: 271px;
	height: 107px;
	position: absolute;
	display: flex;
	align-items: center;
	left: 0;
	top: 50%;
	font-size: 3rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	transform: translateY(-45%);
	background: rgba(0,0,0,0.5) url(img/common/arrow02.png) no-repeat right 22px center / 40px;
	box-sizing: border-box;
	transition: 0.3s;
}
#recruite .person .list .txt .en {
	margin-top: 5px;
	display: block;
	font-size: 1.3rem;
	font-family: 'Futura';
	font-weight: 400;
	letter-spacing: 0;
}
#recruite .person .comLink {
	margin-top: 59px;
	text-align: center;
}
#recruite .person .comLink a {
	padding-right: 60px;
	width: 438px;
	height: 73px;
	color: #FFF;
	border: 1px solid #FFF;
	background-color: #000;
}
#recruite .person .comLink a::after {
	width: 48px;
	background-image: url(img/common/line_arrow_w.png);
}
#recruite .showImg {
	margin: 0 -10px 86px;
}
#recruite .showImg img {
	width: 100%;
}
#recruite .whiteBg .specText {
	margin-right: -30px;
}
@media all and (min-width: 897px) {
	#recruite .person .list a:hover .txt {
		background-position: right 17px center;
		background-size: 50px;
	}
	#recruite .person .list li:nth-child(2n) .txt {
		left: auto;
		right: 0;
	}
}
@media all and (max-width: 896px) {
	#recruite .mainImg {
		top: 53px;
		height: 110vw;
		min-height: inherit;
	}
	#recruite .mainVisual {
		height: 110vw;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		box-sizing: border-box;
		padding: 8px 5px 12px;
	}
	#recruite .mainVisual h2 {
		display: none;
	}
	#recruite .mainVisual .img {
		margin-bottom: 20px;
		text-align: center;
	}
	#recruite .mainVisual .img img {
		width: 147px;
	}
	#recruite .mainVisual p {
		font-size: 1rem;
		line-height: 2.2;
		letter-spacing: 0;
	}
	#recruite .worklife .img > img {
		width: inherit;
		object-fit: cover;
		height: 73.73vw;
	}
	#recruite .worklife .numTxt {
		left: 18px;
		top: 25px;
	}
	#recruite .worklife .numTxt .txt {
		padding: 5px 10px 0 5px;
		font-size: 1.08rem;
	}
	#recruite .worklife .numTxt .num {
		font-size: 6rem;
		left: 33px;
		bottom: -16px;
	}
	#recruite .worklife .img span {
		top: 8vw;
		left: 26vw;
		width: 60vw;
	}
	#recruite .worklife .img .txt01 {
		top: 6.5vw;
		left: 24vw;
		width: 59vw;
	}
	#recruite .worklife .comLink {
		left: auto;
		right: 18px;
		bottom: 10px;
	}
	#recruite .whiteBg {
		padding: 25px 0 47px;
	}
	#recruite .whiteBg p {
		font-size: 1.02rem;
		margin-bottom: 18px;
	}
	#recruite .whiteBg .text {
		margin-bottom: 25px;
	}
	#recruite .smlContent {
		margin: 0 21px;
	}
	#recruite .smlContent:not(:last-child) {
		margin-bottom: 30px;
	}
	#recruite .imgBox {
		margin: 0 -21px 20px;
	}
	#recruite .headLine07 {
		margin-left: -20px;
		margin-right: -20px;
	}
	#recruite .imgBox .photoBox {
		margin-right: 3%;
		width: 37.5%;
	}
	#recruite .imgBox .textBox {
		margin-top: -3px;
		width: auto;
		flex: 1;
	}
	#recruite .imgBox .textBox p {
		margin-bottom: 10px;
	}
	#recruite .whiteBg p:last-child {
		margin-bottom: 0;
	}
	#recruite .whiteBg .sml {
		font-size: 0.9rem;
	}
	#recruite .h3Ttl {
		margin-bottom: 27px;
	}
	#recruite .txtInner {
		display: block;
	}
	#recruite .txtInner p {
		margin-bottom: 35px;
		width: auto;
	}
	#recruite .txtInner .comLink {
		text-align: center;
	}
	#recruite .txtInner .comLink a {
		padding: 0 45px 0 15px;
		width: 260px;
		height: 60px;
		font-size: 1.342rem;
	}
	#recruite .txtInner .comLink a::after {
		width: 34px;
		background-size: auto 8px;
	}
	#recruite .person {
		padding: 35px 0 60px;
	}
	#recruite .person .list {
		margin: 32px 40px 40px;
	}
	#recruite .person .list li {
		width: 100%;
	}
	#recruite .person .list .txt {
		padding: 0 40px 0 12px;
		width: 163px;
		height: 65px;
		font-size: 1.8rem;
		font-weight: 700;
		transform: translateY(-45%);
		background-size: 23px;
		background-position: right 15px center;
	}
	#recruite .person .list .txt .en {
		margin-top: 5px;
		font-size: 0.78rem;
	}
	#recruite .comTxtUl li p {
		font-size: 1.05rem;
		line-height: 1.67;
		font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
	}
	#recruite .person .comLink {
		margin-top: 38px;
	}
	#recruite .person .comLink a {
		padding: 0 40px;
		width: 298px;
		height: 57px;
		letter-spacing: 0.1em;
	}
	#recruite .person .comLink a::after {
		width: 35px;
		background-image: url(img/common/line_arrow_w.png);
		background-size: auto 8px;
	}
	#recruite .showImg {
		margin: 0 0 37px;
	}
	#recruite .whiteBg .specText {
		margin-right: 0;
	}
}


/* eco */
#eco .mainVisual .image {
	height: 656px;
}
#eco .mainVisual .height {
	height: 656px;
}
#eco .mainVisual .headLine04 {
	font-size: 5rem;
}
#eco .comTextBox .headLine03 {
	margin-bottom: 24px;
	font-size: 2.4rem;
}
#eco .comTextBox .innerBox {
	margin: 58px 0 0 93px;
	max-width: inherit;
	font-size: 1.5rem;
	border-color: #5DB500;
	padding: 30px 0 17px 28px;
}
#eco .comTextBox .innerBox p {
	line-height: 2;
	font-weight: normal;
}
#eco .mainVisual .comTextBox {
	padding-top: 206px;
}
#eco p {
	line-height: 2;
}
#eco .titleBox {
	margin-bottom: 55px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 1px solid #5DB500;
	position: relative;
}
#eco .titleBox::after {
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 258px;
	background-color: #5DB500;
	content: "";
}
#eco .titleBox .ttl {
	padding: 15px 28px;
	width: 258px;
	color: #5DB500;
	font-size: 2.5rem;
	box-sizing: border-box;
}
#eco .titleBox .txt {
	padding: 27px 29px 24px;
	flex: 1;
}
#eco #pagePath {
	margin-bottom: 20px;
}
#eco .comLine {
	margin-bottom: 69px;
}
#eco .imgBox {
	margin-bottom: 50px;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 10;
}
#eco .imgBox:last-child {
	margin-bottom: 0;
}
#eco .imgBox .photo {
	width: 292px;
}
#eco .imgBox .textBox {
	flex: 1;
	margin: -6px 25px 0 0;
}
#eco .imgBox .title {
	margin-bottom: 10px;
	font-size: 2.2rem;
}
#eco .imgBox .textBox p {
	text-align: justify;
}
#eco .bgBox {
	position: relative;
}
#eco .bgBox .bgImg {
	width: 780px;
	position: absolute;
	top: 0;
	left: -73px;
}
#eco .sec02 .bgBox .bgImg {
	width: 792px;
	top: -24px;
	left: -63px;
}
#eco .sec03 .bgBox .bgImg {
	width: 740px;
	top: 60px;
	left: -64px;
}
#eco .secBox {
	margin-bottom: 106px;
}
#eco .sec02 {
	margin-bottom: 133px;
}
#eco .sec03 {
	margin-bottom: 122px;
}
@media all and (max-width: 896px) {
	#eco .mainVisual .image {
		height: 489px;
	}
	#eco .mainVisual .height {
		height: 489px;
	}
	#eco .comTextBox .innerBox {
		margin: 19px 0 0 4px;
		max-width: inherit;
		font-size: 1.05rem;
		padding: 12px 0 13px 21px;
	}
	#eco .mainVisual .headLine04 {
		font-size: 3rem;
	}
	#eco .comTextBox .headLine03 {
		margin-bottom: 9px;
		font-size: 1.4rem;
		line-height: 1.8;
	}
	#eco .mainVisual .comTextBox {
		padding: 92px 19px 0 26px;
	}
	#eco .comTextBox .innerBox p {
		line-height: 1.66;
	}
	#eco .comBg {
		padding: 44px 0 60px;
	}
	#eco .content {
		margin: 0 27px;
	}
	#eco .titleBox {
		margin-bottom: 24px;
		display: block;
	}
	#eco .titleBox .ttl {
		padding: 11px 28px;
		font-size: 1.625rem;
		width: auto;
		border-bottom: solid 1px #5DB500;
		text-align: center;
	}
	#eco .titleBox::after {
		display: none;
	}
	#eco p {
		line-height: 1.66;
	}
	#eco .titleBox .txt {
		padding: 17px 17px 19px;
	}
	#eco .imgBox {
		margin-bottom: 25px;
		display: block;
	}
	#eco .imgBox .title {
		margin-bottom: 9px;
		font-size: 1.43rem;
	}
	#eco .imgBox .textBox {
		margin: 0 0 15px;
	}
	#eco .imgBox .photo {
		width: 64%;
	}
	#eco .imgBox .photo img {
		width: 100%;
	}
	#eco .secBox .imgBox .right {
		margin-left: auto;
	}
	#eco .bgBox .bgImg {
		margin-left: 18px;
		width: 390px;
		position: absolute;
		top: 146px;
		left: 50%;
		text-align: center;
		transform: translateX(-50%);
	}
	#eco .secBox {
		margin-bottom: 39px;
	}
	#eco .sec02 .bgBox .bgImg {
		width: 375px;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		margin-top: 60px;
	}
	#eco .sec03 .bgBox .bgImg {
		width: 384px;
		top: auto;
		left: 50%;
		bottom: 84px;
		margin-left: 0;
	}
	#eco .sec03 {
		margin-bottom: 58px;
	}
}



/* printing */
#printing .mainVisual .image {
	height: 656px;
}
#printing .mainVisual .height {
	height: 656px;
}
#printing .mainVisual .headLine04 {
	font-size: 7.35rem;
}
#printing .mainVisual .headLine04 .col {
	font-size: 10.89rem;
}
#printing .mainVisual .comTextBox {
	padding-top: 194px;
}
#printing .comTextBox .innerBox {
	margin-top: 14px;
	letter-spacing: 0;
}
#printing .comTextBox .innerBox p {
	margin-right: -40px;
	line-height: 2.5;
}
#printing #pagePath {
	margin-bottom: 25px;
}
#printing p {
	line-height: 2;
}
#printing .comLine {
	margin-bottom: 40px;
}
#printing .comBg .headLine03 {
	font-weight: normal;
	margin-bottom: 29px;
	font-size: 1.5rem;
}
#printing .comBg .headLine03 .en {
	color: #7A7A7A;
	margin: 0;
	font-size: 6.6rem;
}
#printing .centerTxt {
	margin-bottom: 68px;
	font-size: 2rem;
	line-height: 2 !important;
}
#printing .greyBg {
	padding-bottom: 104px;
}
#printing .secBox {
	margin-bottom: -20px;
	padding-top: 166px;
	position: relative;
}
#printing .secBox .headLine04 {
	margin-bottom: 81px;
	text-align: center;
	font-size: 4.8rem;
}
#printing .secBox .headLine04 .col {
	font-size: 8rem;
}
#printing .secBox .headLine04 .inner {
	min-width: 414px;
	display: inline-block;
	vertical-align: top;
	position: relative;
	box-sizing: border-box;
}
#printing .secBox .headLine04 .inner::after {
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 2px;
	left: 11px;
	background-color: #fff;
	content: "";
}
#printing .secBox .headLine04 img {
	width: 84px;
	position: absolute;
	top: -12px;
	right: calc(100% - 18px);
}
#printing .secBox .imgBox {
	display: flex;
	justify-content: space-between;
}
#printing .secBox .imgBox + .imgBox {
	margin-top: 52px;
}
#printing .secBox .imgBox .imgUl {
	margin-top: 5px;
	width: 442px;
}
#printing .secBox .imgBox .imgUl li {
	margin-bottom: 26px;
}
#printing .secBox .imgBox .imgUl li:last-child {
	margin-bottom: 0 !important;
}
#printing .secBox .imgBox .textBox {
	margin: -7px 50px 0 0;
	flex: 1;
}
#printing .secBox .imgBox .textBox p {
	margin-bottom: 52px;
	text-align: justify;
	letter-spacing: 0.04em;
}
#printing .secBox .imgBox .textBox p:last-child {
	margin-bottom: 0;
}
#printing .secBox .imgBox .title {
	margin-bottom: 4px;
	font-size: 2.2rem;
	line-height: 2;
}
#printing .imgBox.left .textBox {
	order: 3;
	margin: -7px 0 0 50px;
}
#printing .sec02 .imgBox .imgUl li {
	margin-bottom: 63px;
}
#printing .sec03 {
	margin-bottom: 109px;
}
#printing .sec03 .imgBox .imgUl li {
	margin-bottom: 75px;
}
#printing .sec03 .imgBox .title {
	margin-bottom: 5px;
}
#printing .sec03 .imgBox .textBox p {
	margin-bottom: 32px;
}
#printing .sec04 {
	margin-bottom: 131px;
}
#printing .greyBg02 {
	padding: 150px 0 0;
	position: relative;
}
#printing .greyBg02 .centerTxt {
	margin-bottom: 102px;
	font-size: 1.7rem;
	line-height: 2.17 !important;
}
#printing .greyBg02 .headLine03 .en {
	margin-top: -4px;
}
#printing .secBox02 .flexBox {
	margin-top: 66px;
	display: flex;
	justify-content: space-between;
}
#printing .secBox02 .txtDl {
	width: calc(50% - 19px);
	padding: 25px 28px 32px;
	border: 1px solid #fff;
	box-sizing: border-box;
}
#printing .secBox02 .txtDl dt {
	font-size: 2.2rem;
	margin-bottom: 10px;
	font-weight: bold;
}
#printing .secBox02 .txtDl dd {
	margin-bottom: 34px;
	text-align: justify;
}
#printing .secBox02 .txtDl dd:last-child {
	margin-bottom: 0;
}
#printing .secBox02 .headLine03 {
	margin-bottom: 31px;
}
#printing .sec05 .greyBg02 {
	padding-top: 127px;
}
#printing .sec05 .btn {
	margin-top: 93px;
	text-align: center;
}
#printing .sec05 {
	padding-bottom: 138px;
}
#printing .sec06 {
	padding: 102px 0 85px;
	color: #000;
	background-color: #EBEBEB;
}
#printing .sec06 .innerBox {
	position: relative;
	z-index: 10;
}
#printing .sec06 .title {
	margin-bottom: 57px;
	font-size: 3.3rem;
	line-height: 1.54;
	text-align: center;
}
#printing .sec06 .centerTxt {
	margin-bottom: 20px;
	font-size: 1.5rem;
	font-weight: 500;
}
#printing .sec06 .photo {
	margin-top: 32px;
	text-align: center;
}
#printing .sec06 .content {
	position: relative;
}
#printing .sec06 .image {
	position: absolute;
	top: -11px;
	right: -6px;
}
#printing .comBg {
	padding-bottom: 0;
}
@media all and (min-width: 897px) {
	#printing .sec05 .btn a:hover {
		opacity: 0.7;
	}
	#printing .secBox .imgBox .pcMar {
		margin-bottom: 0 !important;
	}
	#printing .sec02 .imgBox + .imgBox {
		margin-top: 20px;
	}
}
@media all and (max-width: 896px) {
	#printing .mainVisual .headLine04 {
		font-size: 3.24rem;
	}
	#printing .mainVisual .headLine04 .col {
		font-size: 4.8rem;
	}
	#printing .mainVisual .comTextBox {
		padding-top: 8px;
	}
	#printing .comTextBox .innerBox p {
		margin-right: 0;
		line-height: 2.1;
	}
	#printing .comTextBox .innerBox {
		margin: 14px -20px 0 85px;
		padding: 14px 0 19px 16px;
	}
	#printing .mainVisual .height {
		height: 374px;
	}
	#printing .mainVisual .image {
		height: 374px;
	}
	#printing .greyBg {
		padding-top: 30px;
		padding-bottom: 41px;
	}
	#printing .comBg .headLine03 .en {
		font-size: 4.25rem;
		line-height: 0.96;
	}
	#printing .comBg .headLine03 {
		margin-bottom: 25px;
		font-size: 0.85rem;
	}
	#printing .comLine {
		margin-bottom: 28px;
	}
	#printing .centerTxt {
		margin-bottom: 41px;
		font-size: 1.2rem;
		line-height: 1.875 !important;
	}
	#printing .secBox .headLine04 .inner {
		padding-bottom: 14px;
		min-width: inherit;
		display: block;
	}
	#printing .secBox .headLine04 .inner::after {
		bottom: 2px;
		left: 0;
	}
	#printing .secBox {
		margin-bottom: 5px;
		padding-top: 51px;
	}
	#printing .secBox .headLine04 {
		margin-bottom: 32px;
		font-size: 3.5rem;
	}
	#printing .secBox .headLine04 .col {
		font-size: 5.8rem;
	}
	#printing .secBox .headLine04 img {
		width: 42px;
		position: static;
		top: auto;
		right: auto;
		display: inline-block;
		vertical-align: bottom;
		margin: -3px 10px 0 -36px;
	}
	#printing .secBox .imgBox {
		display: block;
		margin: 0 26px;
	}
	#printing .secBox .imgBox .textBox {
		margin: 0;
	}
	#printing .secBox .imgBox .imgUl {
		margin: 18px 1px 0;
		width: auto;
	}
	#printing .secBox .imgBox .title {
		margin-bottom: 9px;
		font-size: 1.43rem;
	}
	#printing .secBox .imgBox .title {
		margin-bottom: 5px;
		font-size: 1.43rem;
	}
	#printing .secBox .imgBox .textBox p {
		margin-bottom: 18px;
		letter-spacing: 0;
	}
	#printing .secBox .imgBox .photoBox {
		margin: 0 1px 27px;
	}
	#printing .secBox .imgBox .photoBox img {
		width: 100%;
	}
	#printing p {
		line-height: 1.66;
	}
	#printing .secBox .imgBox .photoBox02 {
		margin: 0 1px 14px;
	}
	#printing .secBox .imgBox .textBox + .photoBox02 {
		margin-top: 23px;
	}
	#printing .secBox .imgBox + .imgBox {
		margin-top: 0;
	}
	#printing .secBox .imgBox + .spImgBox {
		margin-top: 26px;
	}
	#printing .secBox .imgBox .comBtn {
		margin-top: 52px;
	}
	#printing .secBox .imgBox .comBtn a {
		margin: 0 auto;
		max-width: 252px;
		height: 56px;
		font-size: 1.3rem;
	}
	#printing .spCenter {
		text-align: center !important;
	}
	#printing .sec03 .imgBox .title {
		margin-bottom: 5px;
	}
	#printing .sec03 .imgBox .textBox p {
		margin-bottom: 14px;
	}
	#printing .sec03 .imgBox .textBox p + .photoBox {
		margin: 24px 1px 17px;
	}
	#printing .sec03 {
		margin-bottom: 40px;
	}
	#printing .sec05 .greyBg02 {
		padding-top: 60px;
	}
	#printing .greyBg02 {
		padding: 60px 0 0;
	}
	#printing .greyBg02 .headLine03 .en {
		margin-top: 5px;
	}
	#printing .greyBg02 .centerTxt {
		margin-bottom: 46px;
		font-size: 1.2rem;
		line-height: 1.875 !important;
	}
	#printing .secBox02 .flexBox {
		margin-top: 32px;
		display: block;
		margin: 32px 26px 0;
	}
	#printing .secBox02 .txtDl {
		margin-bottom: 24px;
		width: auto;
		padding: 18px 18px 22px;
	}
	#printing .secBox02 .flexBox .txtDl:last-child {
		margin-bottom: 0;
	}
	#printing .secBox02 .txtDl dt {
		font-size: 1.43rem;
		margin-bottom: 8px;
		font-weight: bold;
	}
	#printing .secBox02 .txtDl dd {
		margin-bottom: 17px;
	}
	#printing .sec04 {
		margin-bottom: 38px;
	}
	#printing .sec05 .btn {
		margin-top: 49px;
	}
	#printing .sec05 {
		padding-bottom: 52px;
	}
	#printing .sec06 .title {
		margin-bottom: 31px;
		font-size: 2.1rem;
		line-height: 1.54;
	}
	#printing .sec06 {
		padding: 37px 0 24px;
	}
	#printing .sec06 .centerTxt {
		margin-bottom: 22px;
		font-size: 1.05rem;
	}
	#printing .sec06 .photo {
		margin-top: -12px;
	}
	#printing .sec06 .image {
		top: 41px;
		right: auto;
		width: 251px;
		left: 50%;
		transform: translateX(-50%);
		margin-left: 15px;
	}
	#printing .greyBg02 .showImg img {
		width: 100%;
	}
	#printing .textImg img {
		width: 100%;
	}
}

/* making */
#making .mainVisual .fix {
	width: 100%;
	position: fixed;
	top: 68px;
	left: 0;
	box-sizing: border-box;
}
#making .mainVisual .flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#making .mainVisual .photo {
	width: 50%;
}
#making .mainVisual .photo img {
	width: 100%;
}
#making .mainVisual .textBox {
	margin: 60px 0 0 76px;
	flex: 1;
}
#making .mainVisual p {
	line-height: 2;
	letter-spacing: 0.08em;
}
#making .mainVisual .ttl {
	margin-bottom: 27px;
	font-size: 3.5rem;
	line-height: 1.37;
	letter-spacing: 0.08em;
}
#making .mainVisual .enTxt {
	margin-top: 81px;
	line-height: 1;
}
#making .mainVisual .height {
	height: auto;
	padding-bottom: 46.4%;
}
#making #pagePath {
	margin-bottom: 62px;
}
#making .secBox .innerBox {
	position: relative;
}
#making .secBox .enTxt {
	width: 40px;
	position: absolute;
	top: -93px;
	left: 0;
}
#making .h2Title {
	margin-bottom: 61px;
	font-size: 2.5rem;
	position: relative;
	line-height: 1.8;
	letter-spacing: 0.08em;
}
#making .h2Title span {
	position: relative;
	z-index: 10;
}
#making .h2Title img {
	margin-top: -6px;
	width: 140px;
	position: absolute;
	top: 50%;
	left: 53px;
	transform: translateY(-50%);
}
#making .comLine {
	margin-bottom: 109px;
}
#making p {
	line-height: 2;
}
#making .secBox .textBox {
	margin: 0 0 47px auto;
	max-width: 682px;
}
#making .secBox .textBox p {
	margin-bottom: 30px;
	text-align: justify;
}
#making .secBox .textBox p:last-child {
	margin-bottom: 0;
}
#making .secBox {
	margin-bottom: 61px;
}
#making .sec02 .h2Title img {
	width: 167px;
	left: 40px;
}
#making .imgBox {
	margin: 53px 0 0 auto;
	padding: 37px 5px 37px 34px;
	width: 100%;
	max-width: 685px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #464646;
	box-sizing: border-box;
}
#making .imgBox .image {
	margin-right: 31px;
	width: 231px;
	flex-shrink: 0;
}
#making .imgBox .rightBox {
	flex: 1;
}
#making .sec03 .h2Title img {
	width: 172px;
	left: 40px;
}
#making .sec03 .imgBox {
	max-width: 794px;
	padding: 27px 5px 27px 32px;
}
#making .sec03 .imgBox .image {
	width: 399px;
}
#making .sec04 .h2Title img {
	width: 180px;
	left: 40px;
}
#making .sec04 .imgBox {
	max-width: inherit;
	padding: 27px 5px 27px 30px;
}
#making .sec04 .imgBox .image {
	width: 590px;
}
#making .sec05 .h2Title img {
	width: 180px;
	left: 40px;
}
#making .sec05 .imgBox .image {
	width: 261px;
}
#making .sec06 .h2Title img {
	width: 186px;
	left: 48px;
}
#making .sec06 .imgBox .image {
	width: 452px;
}
#making .sec06 .imgBox {
	max-width: 943px;
}
#making .sec07 .h2Title img {
	width: 186px;
	left: 48px;
}
#making .sec07 .imgBox {
	max-width: 795px;
	padding: 31px;
}
#making .sec07 .imgBox .image {
	margin-right: 0;
	width: auto;
	flex-shrink: inherit;
}
#making .sec07 .imgBox .image img {
	width: 100%;
}
#making .sec08 .h2Title img {
	width: 186px;
	left: 45px;
}
#making .sec08 .imgBox .image {
	width: 350px;
}
#making .sec08 .imgBox {
	max-width: 831px;
	padding: 32px 5px 32px 38px;
}
#making .sec09 .comLine {
	margin-bottom: 52px;
}
#making .sec09 .centerTxt {
	margin-bottom: 60px;
	font-size: 2.5rem;
}
#making .sec09 .flexBox {
	margin: 0 auto;
	max-width: 888px;
	display: flex;
	justify-content: space-between;
}
#making .sec09 .flexBox .photo {
	margin-right: 39px;
	width: 406px;
}
#making .sec09 .flexBox .rightBox {
	margin-right: -40px;
	flex: 1;
}
#making .sec09 .comLink02 {
	margin-top: 33px;
}
#making .comBg {
	padding-bottom: 85px;
}
@media all and (min-width: 897px) {
	#making .imgBox .image a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#making .mainVisual .fix {
		top: 52px;
	}
	#making .mainVisual .flex {
		display: block;
	}
	#making .mainVisual .photo {
		margin-bottom: 23px;
		width: auto;
	}
	#making .mainVisual .textBox {
		margin: 0;
		flex: 1;
		text-align: center;
	}
	#making .mainVisual .height {
		padding-bottom: 55%;
		height: 240px;
	}
	#making .mainVisual .ttl{
		font-size: 1.7rem;
		margin-bottom: 19px;
	}
	#making .mainVisual .textBox p {
		text-align: center;
		line-height: 1.875;
	}
	#making .mainVisual .enTxt {
		margin-top: 15px;
	}
	#making .mainVisual .enTxt img {
		width: 100%;
		max-width: 300px;
	}
	#making .secBox .textBox {
		margin: 0 0 19px;
		max-width: inherit;
	}
	#making .secBox .enTxt {
		width: 20px;
		top: -45px;
		left: -27px;
	}
	#making .h2Title {
		margin: 0 -15px 51px;
		font-size: 1.55rem;
		line-height: 1.87;
		text-align: center;
	}
	#making .h2Title img {
		margin: -2px 0 0 -6px;
		width: 90px;
		position: absolute;
		top: 50%;
		left: 50% !important;
		transform: translate(-50%,-50%);
	}
	#making .comLine {
		margin-bottom: 67px;
	}
	#making .secBox {
		margin: 0 26px 30px;
	}
	#making p {
		line-height: 1.66;
	}
	#making .secBox .textBox p {
		margin-bottom: 18px;
	}
	#making .secBox .photo {
		margin: 0 -26px;
	}
	#making .secBox .photo img {
		width: 100%;
	}
	#making .sec02 .h2Title img {
		width: 110px;
	}
	#making .imgBox {
		margin: 21px -26px 0;
		padding: 23px 10px 18px;
		width: auto;
		max-width: inherit;
		display: block;
		text-align: center;
	}
	#making .imgBox .image {
		width: 100% !important;
		max-width: 180px;
		margin: 0 auto 19px;
	}
	#making .imgBox .rightBox {
		font-size: 0.9rem;
	}
	#making .imgBox .rightBox p {
		line-height: 1.78;
	}
	#making .sec03 .h2Title img {
		width: 110px;
	}
	#making .sec04 .h2Title img {
		width: 118px;
	}
	#making .sec03 .imgBox .image {
		max-width: 285px;
		margin-bottom: 13px;
	}
	#making .sec03 .imgBox {
		max-width: inherit;
		padding: 23px 10px 18px;
	}
	#making .sec04 .imgBox .image {
		max-width: 319px;
		margin-bottom: 5px;
	}
	#making .sec04 .imgBox {
		max-width: inherit;
		padding: 23px 10px 18px;
	}
	#making .sec05 .h2Title img {
		width: 116px;
	}
	#making .sec05 .imgBox .image {
		width: 100%;
		max-width: 282px;
	}
	#making .sec06 .h2Title img {
		width: 111px;
	}
	#making .sec06 .imgBox .image {
		width: 100%;
		max-width: 287px;
	}
	#making .sec07 .h2Title img {
		width: 117px;
	}
	#making .sec07 .imgBox .image {
		margin-bottom: 0;
		width: auto;
		max-width: inherit;
	}
	#making .sec07 .imgBox {
		max-width: inherit;
		padding: 18px 27px 15px;
	}
	#making .sec08 .h2Title img {
		width: 121px;
	}
	#making .sec08 .imgBox {
		max-width: inherit;
		padding: 21px 10px 18px;
	}
	#making .sec08 .imgBox .image {
		width: 100%;
		max-width: 265px;
	}
	#making .sec09 .centerTxt {
		margin-bottom: 19px;
		font-size: 1.5rem;
	}
	#making .sec09 .comLine {
		margin-bottom: 23px;
	}
	#making .sec09 .flexBox {
		margin: 0 46px;
		max-width: inherit;
		display: block;
	}
	#making .sec09 .flexBox .photo {
		width: auto;
		margin: 0 0 20px;
	}
	#making .sec09 .flexBox .rightBox {
		margin: 0 -3px;
	}
	#making .sec09 .comLink02 {
		margin-top: 18px;
		text-align: right;
	}
	#making .comBg {
		padding-bottom: 26px;
	}
}
@media all and (max-width: 374px) {
	#making .h2Title {
		letter-spacing: 0;
	}
}


/* comLink02 */
.comLink02 {
	text-align: right;
}
.comLink02.left {
	text-align: left;
}
.comLink02 a {
	padding-right: 22px;
	font-weight: bold;
	display: inline-block;
	vertical-align: top;
	position: relative;
	font-size: 1.8rem;
}
.comLink02 a:after {
	width: 15px;
	height: 20px;
	position: absolute;
	top: 3px;
	right: 0;
	background: url("img/common/icon03.png") no-repeat left top / 100% 100%;
	content: "";
}
@media all and (min-width: 897px) {
	.comLink02 a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comLink02 {
		margin-top: 37px;
	}
	.comLink02 a {
		padding-right: 17px;
		font-size: 1.15rem;
	}
	.comLink02 a::after {
		width: 10px;
		height: 13px;
		top: 1px;
		right: 1px;
	}
}


/* headLine08 */
.headLine08 {
	margin: 0 30px 50px 0;
	padding-bottom: 12px;
	font-size: 2.1rem;
	border-bottom: solid 1px #007543;
	text-align: center;
	position: relative;
	letter-spacing: 0.05em;
}
.headLine08::after {
	width: 1px;
	height: 30px;
	position: absolute;
	bottom: -8px;
	right: 15px;
	transform: rotate(-62deg);
	background-color: #007543;
	content: "";
}
.headLine08 .en {
	color: #007543;
	font-family: "futura-pt";
	font-size: 1.7rem;
	line-height: 1.2;
	display: block;
}
@media all and (max-width: 896px) {
	.headLine08 {
		padding: 0 0 8px 15px;
		margin: 0 -3px 18px -23px;
		font-size: 1.365rem;
	}
	.headLine08 .en {
		font-size: 1.1rem;
	}
	.headLine08::after {
		width: 1px;
		height: 20px;
		bottom: -5px;
		right: 10px;
	}
}


/* slowlife */
#slowlife .mainVisual .height {
	padding: 108px 20px 0;
	height: 557px;
	box-sizing: border-box;
	position: relative;
}
#slowlife .mainVisual .image {
	height: 557px;
}
#slowlife .mainVisual .ttl {
	margin: 0 177px;
	font-size: 3rem;
	line-height: 1.6;
	font-weight: bold;
	text-shadow: 0 0 6px rgba(0,0,0,0.5);
	letter-spacing: 0.05em;
}
#slowlife .mainVisual .ttl .btm {
	margin-left: 52px;
	display: block;
}
#slowlife .mainVisual .logoBox {
	margin-bottom: 46px;
}
#slowlife .mainVisual .nameBox {
	padding: 48px 25px 10px 35px;
	width: 275px;
	min-height: 257px;
	background-color: #007543;
	box-sizing: border-box;
	position: absolute;
	right: 69px;
	bottom: -69px;
}
#slowlife .mainVisual .nameBox .subTtl {
	margin-bottom: 58px;
	color: #A8D0BF;
	font-size: 1.8rem;
	position: relative;
	font-weight: bold;
	text-align: center;
}
#slowlife .mainVisual .nameBox .subTtl .txt {
	padding: 11px 8px 0 0;
	display: block;
	border-top: solid 1px #000;
	border-left: solid 1px #000;
	position: relative;
	z-index: 10;
}
#slowlife .mainVisual .nameBox .subTtl .num {
	margin: -5px 0 0 -6px;
	color: #fff;
	font-size: 13.6rem;
	font-family:"futura-pt";
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#slowlife .mainVisual .nameBox .name {
	margin: 0 26px;
	font-size: 2.66rem;
	font-weight: bold;
	line-height: 1.2;
	position: relative;
}
#slowlife .mainVisual .nameBox .name::before {
	width: 7px;
	height: 33px;
	position: absolute;
	top: 0;
	left: -24px;
	background-color: #000;
	content: "";
}
#slowlife .mainVisual .nameBox .name .small {
	margin: 14px -40px 0 3px;
	display: block;
	font-weight: normal;
	font-size: 1.5rem;
	font-family: "futura-pt";
	letter-spacing: 0.03em;
}
#slowlife .comBg {
	padding-bottom: 0;
	background-color: #96B3DB;
}
#slowlife #pagePath {
	margin-bottom: 81px;
}
#slowlife .talkBox {
	margin-bottom: 75px;
	color: #000;
}
#slowlife .talkBox .qTitle {
	margin: 0 -2px 37px;
	font-size: 2.2rem;
	line-height: 1.2;
}
#slowlife .talkBox .qTitle span {
	padding: 13px 31px 11px 20px;
	display: inline-block;
	vertical-align: top;
	background-color: #fff;
	border-radius: 50px;
	letter-spacing: 0.03em;
}
#slowlife .talkBox .talkInner {
	margin-left: 131px;
	display: flex;
	justify-content: space-between;
}
#slowlife .talkBox .peoImg {
	margin: 27px 34px 0 0;
	width: 115px;
	flex-shrink: 0;
}
#slowlife .talkBox .rightBox {
	margin-right: -5px;
	padding: 36px 52px 42px 118px;
	flex: 1;
	background-color: #fff;
	border: solid 11px #26AAF2;
	border-radius: 45px;
	line-height: 2;
	font-weight: 500;
	position: relative;
}
#slowlife .talkBox .rightBox::before {
	width: 35px;
	height: 50px;
	position: absolute;
	top: 49px;
	left: -41px;
	background: url("img/slowlife/icon02.png") no-repeat left top / 100% 100%;
	content: "";
}
#slowlife .talkBox .rightBox p {
	text-align: justify;
}
#slowlife .talkBox .aTitle {
	margin-bottom: 16px;
	font-size: 2.2rem;
	position: relative;
}
#slowlife .talkBox .aTitle::before {
	width: 60px;
	height: 60px;
	position: absolute;
	top: -9px;
	left: -77px;
	background: url("img/slowlife/icon01.png") no-repeat left top / 100% 100%;
	content: "";
}
#slowlife .talkBox.box01 .talkInner {
	margin-left: 77px;
}
#slowlife .talkBox.box03 .talkInner {
	margin-left: 107px;
}
#slowlife .talkBox .imgBox {
	margin-left: -65px;
	display: flex;
	justify-content: space-between;
}
#slowlife .talkBox .imgBox .photoBox {
	width: 179px;
	flex-shrink: 0;
	margin: -23px 0 0 20px;
}
#slowlife .talkBox.box04 .talkInner {
	margin-left: 107px;
}
#slowlife .talkBox .imgUl {
	margin: 19px 0 -24px -63px;
}
#slowlife .talkBox .imgUl li {
	display: flex;
	justify-content: space-between;
}
#slowlife .talkBox .imgUl .image {
	flex-shrink: 0;
}
#slowlife .talkBox .imgUl .txt {
	flex: 1;
	font-size: 1.3rem;
	line-height: 1.92;
	margin: 15px 0 0 11px;
}
#slowlife .talkBox .imgUl li:last-child {
	margin: -88px 0 0 277px;
}
#slowlife .whiteBg {
	padding: 76px 0;
	margin-top: 123px;
	color: #000;
	background-color: #fff;
	border-bottom: solid 1px #000;
}
#slowlife .timeUl {
	margin-left: 62px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#slowlife .timeUl li {
	padding: 2px 0 5px 28px;
	width: 286px;
	box-sizing: border-box;
	position: relative;
	font-size: 1.3rem;
}
#slowlife .timeUl li::before {
	width: 6px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 5px;
	background-color: #007543;
	opacity: 0.3;
	content: "";
}
#slowlife .timeUl p {
	line-height: 1.69;
}
#slowlife .timeUl .timeBox {
	margin-bottom: 24px;
	display: flex;
	align-items: center;
	font-weight: bold;
	justify-content: space-between;
	font-size: 2.5rem;
}
#slowlife .timeUl .timeBox .image {
	width: 73px;
}
#slowlife .timeUl .timeBox .rightBox {
	margin: 7px 0 0 17px;
	flex: 1;
	letter-spacing: 0.05em;
}
#slowlife .timeUl .title {
	margin-bottom: 14px;
	font-size: 2rem;
	letter-spacing: 0.05em;
	font-weight: bold;
	line-height: 1.2;
}
#slowlife .dailyBox {
	margin-bottom: 80px;
}
#slowlife .otherBox .headLine08 {
	margin-bottom: 25px;
}
#slowlife .otherBox .linkUl {
	display: flex;
	justify-content: space-between;
	margin: 0 60px 0 16px;
}
#slowlife .otherBox .linkUl li {
	width: calc(50% - 13px);
}
#slowlife .otherBox .linkUl img {
	width: 100%;
}
#slowlife .otherBox .linkUl a {
	display: block;
	position: relative;
}
#slowlife .otherBox .linkUl .txt {
	width: 100%;
	padding: 16px 0;
	position: absolute;
	bottom: 0;
	left: 0;
	line-height: 1.498;
	text-align: center;
	background-color: rgba(0,0,0,0.5);
}
#slowlife .showBox {
	padding-bottom: 8px;
	margin: 25px 0 0 -63px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#slowlife .showBox .listUl {
	margin-right: 24px;
	display: flex;
}
#slowlife .showBox .listUl li {
	margin-right: 30px;
}
#slowlife .showBox .listUl li:last-child {
	margin-right: 0;
}
#slowlife .showBox .txt {
	padding-bottom: 5px;
	margin-right: -15px;
	flex: 1;
	line-height: 1.95;
	font-size: 1.3rem;
}
#slowlife.fn .talkBox .imgBox .photoBox {
	margin: 8px 2px 0 13px;
	width: 191px;
}
@media all and (min-width: 897px) {
	#slowlife .otherBox .linkUl a:hover {
		opacity: 0.7;
	}
	#slowlife.fn .timeUl {
		margin: 0 -40px 0 0;
	}
	#slowlife.fn .timeUl .first {
		width: 200px;
	}
	#slowlife.fn .timeUl li {
		width: 260px;
	}
}
@media all and (max-width: 896px) {
	#slowlife .mainVisual .height {
		padding: 4px 2px 0;
		height: 340px;
	}
	#slowlife .mainVisual .image {
		height: 340px;
	}
	#slowlife .talkBox .talkInner {
		margin: 0 !important;
		display: block;
		position: relative;
	}
	#slowlife .content {
		margin: 0 23px;
	}
	#slowlife .mainVisual .logoBox img {
		width: 156px;
	}
	#slowlife .mainVisual .nameBox {
		padding: 25px 14px 10px;
		width: 279px;
		min-height: 81px;
		right: auto;
		bottom: -35px;
		display: flex;
		left: 50%;
		transform: translateX(-50%);
	}
	#slowlife .mainVisual .nameBox .name {
		margin: -5px 0 0 0;
		font-size: 1.73rem;
	}
	#slowlife .mainVisual .nameBox .name .small {
		margin: 8px -30px 0 3px;
		font-size: 0.975rem;
	}
	#slowlife .mainVisual .nameBox .subTtl {
		margin: 0 28px 0 0;
		font-size: 0.9rem;
		width: 40%;
	}
	#slowlife .mainVisual .nameBox .subTtl .num {
		margin: -13px 0 0 0px;
		font-size: 8.18rem;
	}
	#slowlife .mainVisual .nameBox .subTtl .txt {
		flex: 1;
		padding: 7px 2px 0 0;
	}
	#slowlife .mainVisual .nameBox .name::before {
		width: 4px;
		height: 21px;
		top: 0;
		left: -14px;
	}
	#slowlife .mainVisual .ttl {
		margin: 0 30px;
		font-size: 2rem;
		line-height: 1.45;
	}
	#slowlife .mainVisual .ttl .btm {
		margin: 0 -30px 0 35px;
	}
	#slowlife .mainVisual .logoBox {
		margin-bottom: 49px;
	}
	#slowlife .comBg {
		padding: 75px 0 0;
	}
	#slowlife .talkBox .qTitle {
		margin: 0 0 44px;
		font-size: 1.4rem;
	}
	#slowlife .talkBox .qTitle span {
		padding: 9px 25px 6px 13px;
		letter-spacing: 0.03em;
	}
	#slowlife .talkBox .peoImg {
		margin: 0;
		width: 75px;
		flex-shrink: 0;
		position: absolute;
		top: -44px;
		right: -8px;
		z-index: 10;
	}
	#slowlife .talkBox .rightBox {
		margin: 0 -8px 0 -5px;
		padding: 20px 19px 22px 19px;
		border-width: 7px;
		font-size: 1rem;
		line-height: 1.9;
		border-radius: 30px;
	}
	#slowlife .talkBox .aTitle {
		margin-bottom: 14px;
		padding-left: 63px;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#slowlife .talkBox .spTtl {
		margin-bottom: 28px;
		padding-top: 8px;
	}
	#slowlife .talkBox .aTitle::before {
		width: 39px;
		height: 39px;
		top: -2px;
		left: 8px;
	}
	#slowlife .talkBox .rightBox::before {
		width: 27px;
		height: 38px;
		top: -33px;
		left: 32px;
		transform: rotate(90deg);
	}
	#slowlife .talkBox {
		margin-bottom: 44px;
	}
	#slowlife .talkBox .imgBox {
		margin-left: 0;
		display: block;
	}
	#slowlife .talkBox .imgBox .photoBox {
		width: 115px;
		flex-shrink: 0;
		margin: 4px auto 0;
	}
	#slowlife .talkBox .imgUl .image {
		flex-shrink: 0;
		width: 121px;
	}
	#slowlife .talkBox .imgUl {
		margin: 16px auto 0;
		max-width: 375px;
		padding: 0 1px;
		box-sizing: border-box;
	}
	#slowlife .talkBox .imgUl li:last-child {
		margin: -47px -2px 0 67px;
		align-items: flex-end;
	}
	#slowlife .talkBox .imgUl li:last-child .image {
		order: 3;
		width: 134px;
	}
	#slowlife .talkBox .imgUl .txt {
		font-size: 0.85rem;
		line-height: 1.83;
		margin: 11px 0 0 7px;
	}
	#slowlife .talkBox.box04 {
		margin-bottom: 0;
	}
	#slowlife .whiteBg {
		margin-top: 35px;
		padding: 34px 0 54px;
	}
	#slowlife .timeUl {
		margin: 0 -3px;
		display: block;
	}
	#slowlife .timeUl li {
		margin-bottom: 19px;
		padding: 2px 0 5px 17px;
		width: auto;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		font-size: 0.9rem;
	}
	#slowlife .timeUl li:last-child {
		margin-bottom: 0;
	}
	#slowlife .timeUl .txt {
		margin: 12px -15px 0 0;
		flex: 1;
	}
	#slowlife .timeUl .timeBox .image {
		width: 48px;
	}
	#slowlife .timeUl .timeBox {
		margin: 0;
		align-items: flex-start;
		width: 164px;
		font-size: 1.625rem;
	}
	#slowlife .timeUl li::before {
		width: 4px;
	}
	#slowlife .timeUl .spMar {
		margin-top: 0;
	}
	#slowlife .timeUl .timeBox .rightBox {
		margin: 1px 0 0 12px;
	}
	#slowlife .timeUl .title {
		margin-bottom: 0;
		font-size: 1.3rem;
		letter-spacing: 0;
	}
	#slowlife .timeUl .time {
		margin-bottom: -1px;
	}
	#slowlife .dailyBox {
		margin-bottom: 50px;
	}
	#slowlife .otherBox .linkUl {
		display: block;
		margin: 0 20px;
	}
	#slowlife .otherBox .linkUl li {
		margin-bottom: 17px;
		width: auto;
	}
	#slowlife .otherBox .linkUl li:last-child {
		margin-bottom: 0;
	}
	#slowlife .otherBox .headLine08 {
		margin-bottom: 16px;
	}
	#slowlife .otherBox .linkUl .txt {
		padding: 10px 0;
		font-size: 0.975rem;
	}
	#slowlife .showBox {
		padding-bottom: 0;
		margin: 13px 1px -6px;
		display: block;
	}
	#slowlife .showBox .listUl li {
		margin-right: 20px;
		width: 118px;
	}
	#slowlife .showBox .txt {
		padding-bottom: 0;
		line-height: 1.95;
		font-size: 0.85rem;
		letter-spacing: 0;
		text-align: left;
		margin: 7px 0 0 0;
	}
	#slowlife.fn .talkBox .imgBox .photoBox {
		margin: 14px auto 0;
		width: 147px;
	}
	#slowlife.fn .timeUl {
		margin: 0 -6px 0;
	}
	#slowlife.fn .timeUl .timeBox {
		width: 184px;
	}
}
@media all and (max-width: 374px) {
	#slowlife .timeUl .timeBox {
		width: 140px;
	}
	#slowlife .timeUl .timeBox .image {
		width: 41px;
	}
	#slowlife .timeUl {
		margin: 0 -10px;
	}
	#slowlife .talkBox .imgUl .image {
		width: 78px;
	}
	#slowlife .talkBox .imgUl li:last-child .image {
		width: 92px;
	}
	#slowlife .talkBox .imgUl li:last-child {
		margin: -9px -2px 0 60px;
	}
	#slowlife .talkBox .peoImg {
		width: 65px;
		top: -35px;
	}
	#slowlife .talkBox .qTitle span {
		letter-spacing: 0;
	}
	#slowlife .talkBox .rightBox {
		padding: 20px 14px 22px;
	}
	#slowlife .talkBox .aTitle {
		font-size: 1.4rem;
		padding-left: 54px;
	}
	#slowlife .mainVisual .ttl {
		margin: 0 20px;
		font-size: 1.8rem;
	}
	#slowlife.fn .timeUl .timeBox {
		width: 150px;
	}
	#slowlife.fn .timeUl .txt {
		margin: 3px -15px 0 0;
	}
	#slowlife .timeUl .timeBox .rightBox {
		margin: 1px 0 0 6px;
	}
	#slowlife .timeUl .title {
		font-size: 1.2rem;
	}
	#slowlife .timeUl li {
		padding: 2px 0 5px 11px;
	}
	#slowlife .otherBox .linkUl {
		margin: 0;
	}
}



/* comLink03 */
.comLink03 a,
.comLink03 .inner {
	padding: 0 59px 0 2px;
	font-family: 'Futura';
	font-weight: bold;
	display: inline-block;
	vertical-align: top;
	position: relative;
	letter-spacing: 0.08em;
}
.comLink03 a:after,
.comLink03 .inner:after {
	width: 50px;
	height: 10px;
	position: absolute;
	top: 7px;
	right: 0;
	background: url("img/common/icon06.png") no-repeat left top / 100% 100%;
	content: "";
}
@media all and (min-width: 897px) {
	.comLink03 a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comLink03 a,
	.comLink03 .inner {
		padding: 0 32px 0 2px;
		font-size: 0.932rem;
	}
	.comLink03 a::after,
	.comLink03 .inner:after {
		width: 28px;
		height: 6px;
		top: 4px;
	}
}



/* headLine09 */
.headLine09 {
	margin-bottom: 67px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 3.75rem;
	letter-spacing: 0.05em;
	text-align: center;
}
.headLine09 .col {
	color: #D4000C;
	font-size: 4.3rem;
	line-height: 1;
}
@media all and (max-width: 896px) {
	.headLine09 {
		margin-bottom: 46px;
		font-size: 2rem;
	}
	.headLine09 .col {
		font-size: 2.3rem;
		vertical-align: -2px;
	}
}

/* headLine10 */
.headLine10 {
	margin-bottom: 57px;
	font-size: 3rem;
	font-weight: bold;
	font-family: 'Futura02';
	line-height: 1;
}
@media all and (max-width: 896px) {
	.headLine10 {
		margin-bottom: 57px;
		font-size: 1.8rem;
	}
}

/* comList */
.comList li {
	border-bottom: 1px dotted #fff;
	padding: 22px 0 23px;
	font-weight: bold;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	line-height: 2.33;
}
.comList span {
	display: block;
}
.comList .ttl {
	width: 218px;
	flex-shrink: 0;
}
.comList .txt {
	flex: 1;
}
@media all and (min-width: 897px) {
	.comList a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	.comList li {
		padding: 12px 0 16px;
		line-height: 2.1;
		font-size: 1rem;
	}
	.comList .ttl {
		width: 94px;
	}
}

/* top */
#top .mainImg {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
}
#top .mainImg .image {
	width: 100%;
	position: relative;
	height: 100vh;
	overflow: hidden;
}
#top .mainImg .image::before {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
}
#top .mainImg .image #player {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
#top .mainImg .image img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#top .heightBox .title {
	color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	white-space:nowrap;
	font-size: 4.7rem;
	line-height: 1;
	letter-spacing: 0.015em;
}
#top .heightBox .title span {
	display: block;
}
#top .heightBox .title .en {
	margin-bottom: 5px;
	font-size: 9.4rem;
	font-family:"futura-pt";
	font-weight: normal;
	letter-spacing: -0.025em;	
}
#top .heightBox {
	height: 100vh;
	position: relative;
}
#top .showaBox .image img {
	width: 100%;
}
#top .showaBox .innerBox {
	margin-bottom: 49px;
	position: relative;
}
#top .showaBox .comLine {
	top: -10px;
}
#top .showaBox .imgUl li {
	width: 6.25%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#top .showaBox .imgUl li img {
	width: 100%;
}
#top .showaBox .imgUl .num01 {
	margin: -15.8% 0 0 -13.1%;
}
#top .showaBox .imgUl .num02 {
	margin: -19.8% 0 0 -4.65%;
}
#top .showaBox .imgUl .num03 {
	margin: -19.8% 0 0 4.5%;
}
#top .showaBox .imgUl .num04 {
	margin: -15.8% 0 0 12.85%;
}
#top .showaBox .imgUl .num05 {
	margin: -7.6% 0 0 18.65%;
}
#top .showaBox .imgUl .num06 {
	margin: 9.4% 0 0 18.65%;
}
#top .showaBox .imgUl .num07 {
	margin: 16.7% 0 0 12.85%;
}
#top .showaBox .imgUl .num08 {
	margin: 20.8% 0 0 4.5%;
}
#top .showaBox .imgUl .num09 {
	margin: 20.8% 0 0 -4.65%;
}
#top .showaBox .imgUl .num10 {
	margin: 16.8% 0 0 -13.1%;
}
#top .showaBox .imgUl .num11 {
	margin: 9.4% 0 0 -18.9%;
}
#top .showaBox .imgUl .num12 {
	margin: -7.6% 0 0 -18.65%;
}
#top .showaBox .title {
	margin-top: 3%;
	width: 100%;
	white-space:nowrap;
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 2.25vw;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	line-height: 1;
}
#top .showaBox .title span {
	display: block;
}
#top .showaBox .title .en {
	margin-bottom: 1.5%;
	color: #FC0000;
	font-size: 6.91vw;
	font-family:"futura-pt";
	font-weight: normal;
}
#top .showaBox .title .jp {
	letter-spacing: 0.1em;
}
#top .showaBox .comLink03 {
	margin-bottom: 68px;	
}
#top .showaBox {
	margin-bottom: -17px;
	padding-bottom: 123px;
	background: url("img/index/bg07.png") no-repeat left bottom -60px / 100% 601px;
}
#top .showaBox .btnUl {
	margin: 108px 46px 0;
	display: flex;
	justify-content: space-between;
}
#top .showaBox .btnUl li {
	width: 414px;
}
#top .howBox {
	padding-top: 60px;
}
#top .howBox .listUl {
	margin-top: 26px;
	display: flex;
	justify-content: space-between;
}
#top .howBox .listUl li {
	padding: 81px 0 31px;
	width: 50%;
	background: url("img/index/bg01.png") no-repeat center center / cover;
	text-align: center;
	box-sizing: border-box;
}
#top .howBox .listUl li:last-child {
	background-image: url("img/index/bg02.png");
}
#top .howBox .listUl p {
	line-height: 2;
	letter-spacing: 0.05em;
}
#top .howBox .listUl .title {
	margin-bottom: 25px;
	font-family: 'Futura02';
	font-size: 3.6rem;
	line-height: 1.41;
	font-weight: 900;
	letter-spacing: 0.05em;
}
#top .howBox .listUl li:last-child .title {
	margin-bottom: 5px;
}
#top .howBox .listUl .link img {
	width: 50px;
}
#top .howBox .listUl .link {
	margin-top: 44px;
}
#top .howBox .listUl .btn {
	margin-top: 51px;
	text-align: center;
}
#top .aboutBox {
	padding-top: 68px;
}
#top .aboutBox .comLink03 {
	margin-bottom: 24px;
}
#top .aboutBox .bgBox {
	padding-top: 44px;
	background: url("img/index/bg03.jpg") no-repeat center center / cover;
}
#top .aboutBox .title {
	margin-bottom: 231px;
	font-size: 3.6rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}
#top .aboutBox .title .small {
	margin-top: 15px;
	display: block;
	font-size: 1.5rem;
	letter-spacing: 0.03em;
	font-weight: normal;
}
#top .aboutBox .linkUl {
	margin: 0 1px;
	display: flex;
	justify-content: flex-end;
}
#top .aboutBox .linkUl li {
	margin-left: 12px;
	width: 267px;
}
#top .aboutBox .linkUl li:nth-child(2) {
	width: 204px;
}
#top .aboutBox .linkUl li:last-child {
	width: 251px;
}
#top .aboutBox .linkUl a {
	padding: 24px 36px 5px;
	color: #fff;
	min-height: 166px;
	line-height: 2;
	display: block;
	background-color: #000;
	letter-spacing: 0.05em;
	box-sizing: border-box;
	position: relative;
}
#top .aboutBox .linkUl a:after {
	margin-top: -23px;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 50%;
	right: 15px;
	background: url("img/common/icon07.png") no-repeat left top / 100% 100%;
	content: "";
}
#top .newsBox {
	padding: 81px 0 24px;
}
#top .newsBox .content {
	padding: 60px 0 65px 5px;
	max-width: 1002px;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
}
#top .newsBox .leftBox {
	width: 322px;
	flex-shrink: 0;
}
#top .newsBox .rightBox {
	margin-top: -22px;
	flex: 1;
}
#top .newsBox .linkUl {
	font-weight: bold;
	font-family: 'Futura02';
	font-size: 1.695rem;
	letter-spacing: 0.05em;
}
#top .newsBox .linkUl a {
	color: #787878;
}
#top .newsBox .linkUl .on {
	color: #fff;
}
#top .newsBox .linkUl li {
	margin-bottom: 25px;
}
#top .newsBox .linkUl li:last-child {
	 margin-bottom: 0;
}
#top .ourcultureBox .bgBox {
	padding: 46px 0 73px;
	background: url("img/index/bg04.jpg") no-repeat center center / cover;
}
#top .ourcultureBox .content {
	position: relative;
}
#top .ourcultureBox .textImg {
	position: absolute;
	top: 39px;
	right: 10px;
	width: 235px;
}
#top .ourcultureBox .comLink03 {
	margin-bottom: 25px;
}
#top .ourcultureBox .flexBox {
	display: flex;
	justify-content: space-between;
}
#top .ourcultureBox .leftBox {
	width: 488px;
}
#top .ourcultureBox .rightBox {
	margin-left: 13px;
	flex: 1;
}
#top .ourcultureBox .imgBox a {
	display: block;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.5;
	background-color: #000;
	letter-spacing: 0.05em;
	position: relative;
}
#top .ourcultureBox .imgBox a::after {
	width: 15px;
	height: 20px;
	position: absolute;
	bottom: 19px;
	right: 15px;
	background: url("img/common/icon08.png") no-repeat left top /100% 100%;
	content: "";
}
#top .ourcultureBox .imgBox .name {
	margin-top: 10px;
	font-size: 1.5rem;
	font-weight: normal;
}
#top .ourcultureBox .imgBox .textBox {
	padding: 34px 37px 59px;
}
#top .ourcultureBox .listUl a {
	display: flex;
	font-size: 1.5rem;
	justify-content: space-between;
}
#top .ourcultureBox .listUl .name {
	font-size: 1.3rem;
}
#top .ourcultureBox .listUl .photo {
	width: 238px;
}
#top .ourcultureBox .listUl .imgBox .textBox {
	padding: 23px 17px;
	flex: 1;
}
#top .ourcultureBox .listUl li {
	margin-bottom: 11px;
}
#top .ourcultureBox .listUl li:last-child {
	margin-bottom: 0;
}
#top .ourcultureBox .listUl .imgBox a::after {
	bottom: 12px;
	right: 16px;
}
#top .ourcultureBox {
	padding-top: 60px;
}
#top .entertainmentBox {
	padding-top: 66px;
}
#top .entertainmentBox .bgBox {
	padding: 45px 0 73px;
	background: url("img/index/bg05.jpg") no-repeat center center / cover;
}
#top .entertainmentBox .comLink03 {
	margin-bottom: 25px;
}
#top .entertainmentBox .flexBox {
	display: flex;
	justify-content: space-between;
	line-height: 1.86;
}
#top .entertainmentBox .flexBox .box {
	padding: 66px 35px 29px;
	width: calc(50% - 6px);
	box-sizing: border-box;
	background-color: rgba(0, 0, 0, 0.49);
	position: relative;
}
#top .entertainmentBox .logo {
	position: absolute;
	top: 15px;
	left: 17px;
}
#top .entertainmentBox .right .logo {
	top: 19px;
	left: 20px;
}
#top .entertainmentBox .link {
	width: 50px;
	position: absolute;
	bottom: 18px;
	right: 19px;
}
#top .entertainmentBox .ttl {
	margin-bottom: 15px;
	text-align: center;
	font-size: 2.8rem;
	line-height: 1.2;
}
#top .entertainmentBox .ttl .small {
	margin-bottom: 3px;
	display: block;
	font-size: 1.6rem;
}
#top .entertainmentBox .comTextBox02 {
	margin-bottom: 19px;
}
#top .entertainmentBox .movieBox {
	margin: 20px auto 0;
	max-width: 275px;
	text-align: center;
}
#top .entertainmentBox .movieBox p {
	margin-top: 7px;
}
#top .entertainmentBox .insBox {
	margin: 20px auto 0;
	max-width: 217px;
	position: relative;
}
#top .entertainmentBox .insBox .icon {
	width: 111px;
	position: absolute;
	top: 52px;
	left: -93px;
	z-index: 10;
}
#top .recruitBox {
	padding-top: 66px;
}
#top .recruitBox .bgBox {
	padding: 45px 0 13px;
	background: url("img/index/bg07.jpg") no-repeat center center / cover;
}
#top .recruitBox .comLink03 {
	margin-bottom: 24px;
}
#top .recruitBox .comTextBox02 {
	margin-bottom: 7px;
}
#top .recruitBox .comTextBox02 .title {
	margin-bottom: 0;
}
#top .recruitBox .txt {
	margin-bottom: 48px;
	font-weight: bold;
	text-align: center;
	font-size: 1.7rem;
	line-height: 2.05;
	position: relative;
	z-index: 10;
	letter-spacing: 0.07em;
}
#top .recruitBox .textImg {
	text-align: center;
	position: relative;
	z-index: 10;
}
#top .recruitBox .content {
	position: relative;
}
#top .recruitBox .photo {
	width: 513px;
	position: absolute;
	top: 80px;
	left: -41px;
}
#top .recruitBox .photo02 {
	left: auto;
	right: -142px;
	top: 13px;
}
#top .recruitBox .comBtn {
	margin-top: 126px;
}
#top .recruitBox .comBtn a {
	background-color: rgba(255,255,255,0.2);
}
#top .contactBox {
	padding: 67px 0 58px;
}
#top .contactBox .content {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#top .contactBox .headLine10 {
	padding: 0 10px 7px 0;
	width: 280px;
	margin: 0;
	box-sizing: border-box;
	letter-spacing: 0.05em;
}
#top .contactBox .rightBox {
	flex: 1;
	display: flex;
	justify-content: flex-end;
}
#top .contactBox .btn a {
	padding-top: 3px;
	width: 358px;
	height: 51px;
	font-weight: bold;
	font-size: 1.864rem;
	border: solid 1px #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	position: relative;
}
#top .contactBox .btn .inner {
	display: block;
	white-space:nowrap;
}
#top .contactBox .btn img {
	width: 25px;
	display: inline-block;
	vertical-align: middle;
	margin: -1px 10px 0 -31px;
}
#top .contactBox .btn a::after {
	margin-top: -5px;
	width: 50px;
	height: 10px;
	position: absolute;
	top: 50%;
	right: 7px;
	background: url("img/common/icon06.png") no-repeat left top / 100% 100%;
	content: "";
}
#top .contactBox .telUl {
	margin: -3px 39px 0 0;
	font-size: 2.26rem;
	line-height: 1;
	letter-spacing: 0.05em;
	font-weight: bold;
}
#top .contactBox .telUl li {
	margin-bottom: 11px;
}
#top .contactBox .telUl li:last-child {
	margin-bottom: 0;
}
#top .contactBox .telUl a {
	display: inline-block;
	vertical-align: top;
	position: relative;
}
#top .contactBox .telUl a::before {
	margin-top: -9px;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	left: -25px;
	background: url("img/common/icon09.png") no-repeat left top / 100% 100%;
	content: "";
}
#top .comBg {
	padding-bottom: 0;
}
@media all and (min-width: 897px) {
	#top .showaBox .content {
		position: relative;
	}
	#top .newsBox .linkUl a:hover {
		color: #fff;
	}
	#top .contactBox .btn a:hover {
		opacity: 0.7;
	}
	#top .showaBox .btnUl a:hover {
		opacity: 0.7;
	}
	#top .howBox .listUl a:hover {
		opacity: 0.7;
	}
	#top .aboutBox .linkUl a:hover {
		opacity: 0.7;
	}
	#top .ourcultureBox .imgBox a:hover {
		opacity: 0.7;
	}
	#top .entertainmentBox a:hover {
		opacity: 0.7;
	}
	.index #gFooter .innerFlex {
		display: flex !important;
	}
}
@media all and (max-width: 896px) {
	#top .mainImg .image {
		height: calc(100vh - 53px);
	}
	#top .mainImg {
		top: 53px;
	}
	#top .heightBox {
		height: calc(100vh - 53px);
	}
	#top .heightBox .title .en {
		font-size: 5.64rem;
	}
	#top .heightBox .title {
		font-size: 2.82rem;
		opacity: 0.9;
	}
	#top .showaBox {
		margin-bottom: 0;
		padding-bottom: 30px;
		position: relative;
		background: transparent;
	}
	#top .showaBox .comLink03 {
		position: absolute;
		top: 12px;
		left: 10px;
	}
	#top .showaBox .comTxtUl p {
		line-height: 1.66;
	}
	#top .showaBox .innerBox {
		margin-bottom: 38px;
	}
	#top .showaBox .btnUl {
		margin: 47px 0 0;
		display: block;
	}
	#top .showaBox .btnUl li {
		padding: 0 30px;
		margin-bottom: 40px;
		width: auto;
		position: relative;
		text-align: center;
	}
	#top .showaBox .btnUl li:last-child {
		margin-bottom: 0;
	}
	#top .showaBox .btnUl a {
		position: relative;
		z-index: 10;
	}
	#top .showaBox .btnUl li::after {
		width: 170%;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		background: url("img/index/bg07.png") no-repeat left top / 100% 100%;
		transform: translate(-50%,-50%);
		content: "";
	}
	#top .howBox {
		padding-top: 30px;
	}
	#top .howBox .comLink03 {
		margin: 0 10px;
	}
	#top .howBox .listUl {
		margin-top: 4px;
		display: block;
	}
	#top .howBox .listUl li {
		padding: 19px 0 19px;
		width: auto;
	}
	#top .howBox .listUl .title {
		margin-bottom: 15px;
		font-size: 2.25rem;
	}
	#top .howBox .listUl p {
		line-height: 1.7;
		letter-spacing: 0.05em;
	}
	#top .howBox .listUl .link img {
		width: 35px;
	}
	#top .howBox .listUl .link {
		margin-top: 25px;
	}
	#top .howBox .listUl .btn {
		margin: 25px 10px 0;
	}
	#top .howBox .listUl li:last-child {
		padding: 24px 0 15px;
		background-image: url("img/index/sp_bg02.jpg");
	}
	#top .howBox .listUl li:last-child .title {
		margin-bottom: 13px;
	}
	#top .aboutBox {
		padding-top: 46px;
	}
	#top .comLink03.content {
		margin: 0 10px 13px;
	}
	#top .aboutBox .bgBox {
		padding-top: 0;
		background: transparent;
	}
	#top .aboutBox .innerBox {
		position: relative;
	}
	#top .aboutBox .innerBox .title {
		padding: 0 15px;
		width: 100%;
		position: absolute;
		top: 21px;
		left: 0;
		font-size: 2rem;
		box-sizing: border-box;
		margin: 0;
		line-height: 1.3;
	}
	#top .aboutBox .innerBox .title .small {
		margin-top: 6px;
		font-size: 1rem;
	}
	#top .aboutBox .linkUl li {
		margin-left: 0;
		width: 35%;
	}
	#top .aboutBox .linkUl li:nth-child(2) {
		width: 30%;
	}
	#top .aboutBox .linkUl li:last-child {
		width: 35%;
	}
	#top .aboutBox .linkUl a {
		padding: 15px 5px 5px 18px;
		line-height: 2.2;
		min-height: 160px;
	}
	#top .aboutBox .linkUl {
		margin: 0;
		justify-content: flex-start;
	}
	#top .aboutBox .linkUl strong {
		margin-bottom: 3px;
		display: inline-block;
		vertical-align: top;
	}
	#top .aboutBox .linkUl a::after {
		right: auto;
		left: 50%;
		bottom: 0;
		top: auto;
		margin: 0 0 0 -29px;
		width: 36px;
		height: 36px;
	}
	#top .newsBox {
		padding: 44px 0 8px;
	}
	#top .newsBox .content {
		padding: 36px 19px 38px;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		display: block;
	}
	#top .newsBox .leftBox {
		width: auto;
		display: flex;
	}
	#top .newsBox .headLine10 {
		margin-bottom: 0;
	}
	#top .newsBox .linkUl {
		margin: 5px 0 0 34px;
		display: flex;
		font-size: 1.1rem;
		flex: 1;
	}
	#top .newsBox .linkUl li {
		margin: 0 33px 0 0;
	}
	#top .newsBox .linkUl li:last-child {
		margin-bottom: 0;
	}
	#top .newsBox .rightBox {
		margin-top: 11px;
	}
	#top .ourcultureBox .bgBox {
		padding: 21px 15px 15px;
		background: url("img/index/bg04.jpg") no-repeat center center / cover;
	}
	#top .ourcultureBox .textImg {
		top: 8px;
		right: 6px;
		width: 117px;
	}
	#top .ourcultureBox .flexBox {
		margin: 0 2px;
		display: block;
	}
	#top .ourcultureBox .leftBox {
		margin-bottom: 7px;
		width: auto;
	}
	#top .ourcultureBox .rightBox {
		margin-left: 0;
	}
	#top .ourcultureBox .imgBox a {
		font-size: 1.25rem;
		line-height: 1.56;
	}
	#top .ourcultureBox .imgBox .photo img {
		width: 100%;
	}
	#top .ourcultureBox .imgBox .textBox {
		padding: 11px 14px 24px;
	}
	#top .ourcultureBox .imgBox .name {
		margin-top: 5px;
		font-size: 0.9rem;
		font-weight: normal;
	}
	#top .ourcultureBox .listUl .photo {
		width: 45%;
	}
	#top .ourcultureBox .listUl .photo img {
		width: 100%;
	}
	#top .ourcultureBox .listUl a {
		font-size: 1rem;
	}
	#top .ourcultureBox .listUl .imgBox .textBox {
		padding: 12px 14px;
	}
	#top .ourcultureBox .listUl .name {
		margin-top: 10px;
		font-size: 0.75rem;
	}
	#top .ourcultureBox .listUl li {
		margin-bottom: 6px;
	}
	#top .ourcultureBox .imgBox a::after {
		width: 14px;
		height: 16px;
		bottom: 36px;
		right: 9px;
	}
	#top .ourcultureBox .listUl .imgBox a::after {
		bottom: auto;
		right: 8px;
		top: 50%;
		margin-top: -7px;
	}
	#top .entertainmentBox {
		padding-top: 45px;
	}
	#top .ourcultureBox {
		padding-top: 30px;
	}
	#top .entertainmentBox .comLink03 {
		margin-bottom: 7px;
	}
	#top .entertainmentBox .bgBox {
		padding: 25px 19px 20px;
		background-image: url("img/index/sp_bg05.jpg");
	}
	#top .entertainmentBox .comTextBox02 .title {
		font-size: 2.2rem;
		margin-bottom: 5px;
	}
	#top .entertainmentBox .comTextBox02 {
		margin-bottom: 14px;
	}
	#top .entertainmentBox .flexBox {
		display: block;
	}
	#top .entertainmentBox .flexBox .box {
		padding: 19px 14px 14px;
		margin-bottom: 6px;
		width: auto;
	}
	#top .entertainmentBox .flexBox .box:last-child {
		margin-bottom: 0;
	}
	#top .entertainmentBox .logo {
		top: 19px;
		left: 10px;
		width: 73px;
	}
	#top .entertainmentBox .ttl {
		margin: 0 0 22px 78px;
		font-size: 1.5rem;
		text-align: left;
	}
	#top .entertainmentBox .ttl .small {
		font-size: 0.96rem;
	}
	#top .entertainmentBox .innerFlex {
		display: flex;
		font-size: 0.9rem;
		justify-content: space-between;
	}
	#top .entertainmentBox .movieBox {
		margin: 4px 0 0 0;
		max-width: 127px;
	}
	#top .entertainmentBox .movieBox p {
		margin-top: 4px;
	}
	#top .entertainmentBox .innerFlex p {
		line-height: 1.722;
	}
	#top .entertainmentBox .right .logo {
		top: 16px;
		left: 16px;
		width: 42px;
	}
	#top .entertainmentBox .right .ttl {
		margin: 0 0 25px 85px;
	}
	#top .entertainmentBox .insBox {
		margin: -2px 26px 0 0;
		max-width: 99px;
	}
	#top .entertainmentBox .insBox .icon {
		width: 66px;
		top: 57px;
		left: -43px;
	}
	#top .entertainmentBox .link {
		width: 36px;
		bottom: auto;
		right: 10px;
		top: 17px;
	}
	#top .recruitBox .comLink03 {
		margin-bottom: 9px;
	}
	#top .recruitBox .bgBox {
		padding: 27px 18px 32px;
		background-image: url("img/index/sp_bg07.jpg");
	}
	#top .recruitBox .innerFlex {
		margin-bottom: 50px;
		display: flex;
		justify-content: space-between;
	}
	#top .recruitBox .txt {
		margin: 2px 0 0 0;
		text-align: left;
		font-size: 1rem;
		line-height: 1.68;
		flex: 1;
		letter-spacing: 0.07em;
	}
	#top .recruitBox .comTextBox02 {
		margin-bottom: 0;
		width: 104px;
	}
	#top .recruitBox .textImg img {
		width: 120px;
	}
	#top .recruitBox .photo {
		width: 185px;
		top: 102px;
		left: -34px;
	}
	#top .recruitBox .photo02 {
		left: auto;
		right: -46px;
		top: 101px;
	}
	#top .recruitBox .comBtn {
		margin-top: 157px;
	}
	#top .recruitBox .comBtn a {
		width: 252px;
		height: 56px;
	}
	#top .contactBox .content {
		display: block;
	}
	#top .contactBox .headLine10 {
		padding: 0;
		width: auto;
		margin: 0 0 30px;
		letter-spacing: 0.05em;
		text-align: center;
	}
	#top .contactBox .rightBox {
		display: block;
	}
	#top .contactBox .telUl {
		margin: 0 0 28px 17px;
		font-size: 1.627rem;
		letter-spacing: 0.05em;
		text-align: center;
	}
	#top .contactBox {
		padding: 26px 0 26px;
	}
	#top .contactBox .telUl li {
		margin-bottom: 7px;
	}
	#top .contactBox .telUl a::before {
		margin-top: -7px;
		width: 15px;
		height: 15px;
		top: 50%;
		left: -19px;
	}
	#top .contactBox .btn a {
		margin: 0 auto;
		padding-top: 0;
		width: 258px;
		height: 58px;
		font-size: 1.34rem;
	}
	#top .contactBox .btn img {
		width: 18px;
		margin: -1px 5px 0 -22px;
	}
	#top .contactBox .btn a::after {
		margin-top: -5px;
		width: 36px;
		height: 8px;
		right: 6px;
	}
	#top .recruitBox .bgBox .content,
	#top .entertainmentBox .bgBox .content,
	#top .ourcultureBox .bgBox .content {
		margin: 0 auto;
		max-width: 500px;
	}
	#top .aboutBox .innerBox .image img {
		width: 100%;
	}
	#top .recruitBox {
		padding-top: 45px;
	}
}
@media all and (max-width: 374px) {
	#top .newsBox .linkUl li {
		margin: 0 15px 0 0;
	}
	#top .entertainmentBox .insBox {
		margin: -2px 0 0 0;
		max-width: 99px;
	}
	#top .entertainmentBox .insBox .icon {
		width: 50px;
		left: -34px;
	}
	#top .entertainmentBox .movieBox {
		margin: 4px 0 0 5px;
		max-width: 100px;
	}
	#top .entertainmentBox .movieBox p {
		font-size: 0.8rem;
	}
	#top .entertainmentBox .link {
		width: 20px;
		right: 10px;
		top: 10px;
	}
	#top .recruitBox .comTextBox02 {
		width: 92px;
	}
	#top .recruitBox .txt {
		font-size: 0.9rem;
		letter-spacing: 0;
	}
}

/* comTextBox02 */
.comTextBox02 {
	margin-bottom: 34px;
}
.comTextBox02 .title {
	margin-bottom: 13px;
	font-size: 3.6rem;
	line-height: 1.41;
	letter-spacing: 0.05em;
}
.comTextBox02 p {
	line-height: 2.13;
	letter-spacing: 0.08em;
}
@media all and (max-width: 896px) {
	.comTextBox02 .title {
		margin-bottom: 3px;
		font-size: 2rem;
		line-height: 1.34;
		letter-spacing: 0.05em;
	}
	.comTextBox02 p {
		font-size: 1rem;
		line-height: 1.92;
	}
	.comTextBox02 {
		margin-bottom: 28px;
	}
	
}

/* animate */
.fadeIn {
	opacity: 0;
	transition: .5s;
}
.fadeIn.on {
	opacity: 1;
}
.fadeUp {
	opacity: 0;
	transform: translateY(50px);
	transition: 1s;
}
.fadeUp.on {
	opacity: 1;
	transform: translateY(0);
}
.fadeLeft {
	opacity: 0;
	transform: translateX(-50px);
	transition: 1s;
}
.fadeLeft.on {
	opacity: 1;
	transform: translateX(0);
}
.fadeRight {
	opacity: 0;
	transform: translateX(50px);
	transition: 1s;
}
.fadeRight.on {
	opacity: 1;
	transform: translateX(0);
}
.dely01 {
	transition-delay: .2s;
}
.dely02 {
	transition-delay: .4s;
}
@media all and (max-width: 896px) {
	.dely01 {
		transition-delay: 0s;
	}
	.dely02 {
		transition-delay: 0s;
	}
}
#top .showaBox .title,
#top .showaBox .imgUl {
	opacity: 0;
	transition: 1s;
}
#top .showaBox .title {
	transform: translate(-100%,-50%);
}
#top .showaBox .on .title,
#top .showaBox .on .imgUl {
	opacity: 1;
	transition-delay: .5s;
}
#top .showaBox .on .title {
	transition-delay: 1s;
	transform: translate(-50%,-50%);
}

/*add 241127*/
#top .showaBox .btnUl {
	margin-right: 0;
	margin-left: 0;
	gap: 0 24px;
}
@media (max-width: 896px) {
	#top .showaBox .btnUl .bnr3 {
		max-width: 630px;
		width: 100%;
	}
}