@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Arsenal:400,400i,700|Noto+Sans+JP:400,500,700|Noto+Sans:400,700&display=swap');
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
body, table, input, textarea, select, option {
	font-family: 'Noto Sans','Noto Sans JP', sans-serif;
}

html {
	font-size: 62.5%;
}

ol, ul {
	list-style: none;
}

img {
	vertical-align: top;
	max-width: 100%;
}

a,
a:link {
	color: #000;
	text-decoration: none;
	transition: .3s;
}
business-area-pannel
a:visited {
	color: #000;
}

a:hover {
	color: #000;
}

a:active {
	color: #000;
}

.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
.anchor{
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	color: #444;
	font-weight: 400;
	font-size: 1.6rem;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
	animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

#wrapper {
	padding-top: 125px;
	text-align: left;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
}

a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}

@media all and (min-width: 1141px) {
	.sp {
		display: none !important;
	}
}

@media all and (max-width: 1024px) {
	body {
		min-width: inherit;
		font-size: 1.4rem;
	}

	#wrapper {
		padding-top: 46px;
	}

	a:hover,
	a:hover img {
		opacity: 1 !important;
	}

	.pc {
		display: none !important;
	}

	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}

}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
header {
	padding: 35px 90px 0 69px;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	box-sizing: border-box;
	background-color: #fff;
	z-index: 9;
}

header.fix {
	position: fixed;
}

header .logo {
	width: 228px;
	position: absolute;
	left: 28px;
	top: 23px;
}

.header-link {
	padding: 0 0 0 15px;
	width: 250px;
	position: absolute;
	right: 0;
	top: 0;
	border-top: 2px solid #272727;
	margin-bottom: 0;
}

.header-link > li {
	float: left;
	width: 33.333%;
}

.header-link > li > a {
	padding: 30px 0 26px;
	display: block;
	text-align: -webkit-center;
	font-family: 'Arsenal', sans-serif;
}

.header-link > li > a > img {
	margin-right: 7px;
	width: 13px;
	display: inline-block;
	vertical-align: middle;
}

.header-link > li > a > span {
	display: block;
	font-size: 1rem;
}

.header-link > li > a > i {
	display: block;
}

.header-link li ul {
	display: none;
	list-style: none;
	position: absolute;
  width: 250px;
  margin: 0;
  padding: 0;
  text-align: left;
	z-index: 10;
}

.header-link li ul li a {
	padding: 18px 0 16px;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	color: #fff;
	background-color: #363636;
	border-bottom: 2px solid #fff;
}

.header-link li ul li:last-child a {
	border-bottom: none;
}

.header-link li ul li a:hover {
	opacity: 0.7;
}

.header-menu-link > li > a > img {
	margin-right: 7px;
	width: 13px;
	display: inline-block;
	vertical-align: middle;
}

.header-menu-link li ul {
	display: none;
  list-style: none;
  position: absolute;
  top: 100%;
  width: 280px;
  margin: 0;
  padding: 0;
  text-align: left;
  z-index: 10;
}

.header-menu-link li ul li a {
	padding: 18px 0 16px;
	display: block;
	text-align: center;
	font-size: 1.4rem;
	color: #fff;
	background-color: #363636;
	border-bottom: 2px solid #fff;
}

.header-menu-link li ul li:last-child a {
	border-bottom: none;
}

.header-menu-link li ul li a:hover {
	background-color: #767676;
}

header img.on {
	display: none !important;
}

header.on {
	background-color: #363636;
}

header.on a {
	color: #ccc;
}

header.on img.off {
	display: none !important;
}

header.on img.on {
	display: inline-block !important;
}

.dropdown:hover > .dropdown-menu{
	display: block;
}

@media all and (max-width: 1500px) {
	header {
		padding-right: 58px;
	}
}

@media all and (max-width: 1340px) {
	header {
		padding-right: 45px;
	}

	header .logo {
		left: 10px;
	}

	.header-link {
		padding: 0 0 0 3px;
		width: 175px;
		font-size: 1.4rem;
	}
}

@media all and (min-width: 0) and (min-width: 1141px) {
	.menu-box {
		display: none !important;
	}
}

@media all and (max-width: 1140px) {
	header {
		padding: 10px 53px 10px 12px;
		margin-bottom: 0;
	}

	header .logo {
		position: static;
		width: 101px;
		float: left;
	}

	.header-link {
		float: right;
		padding: 0;
		width: auto;
		text-align: right;
		position: static;
		border-top: none;
	}

	.header-link > li {
		display: inline-block;
		float: none;
		width: auto;
	}

	.header-link > li {
		margin-right: 10px;
	}

	.header-link > li:last-child{
		margin-right: 0;
	}

	.header-link > li > a {
		padding: 5px 0;
		font-size: 1.05rem;
	}

	.header-link > li > a > img {
		margin: -1px 4px 0 0;
		width: 8px;
	}

	.header-link li ul li a {
		padding: 10px 0;
		font-size: 1rem;
		border-bottom: 1px solid #fff;
	}

	.header-menu-link {
	  float: right;
	  padding: 0;
	  width: auto;
	  text-align: right;
	  position: static;
	  border-top: none;
	}

	.header-menu-link > li {
	  display: inline-block;
	  float: none;
	  width: auto;
	}

	.header-menu-link > li {
	  margin-right: 10px;
	}

	.header-menu-link > li:last-child{
	  margin-right: 0;
	}

	.header-menu-link > li > a {
	  padding: 5px 0;
	  font-size: 1.05rem;
	}

	.header-menu-link > li > a > img {
	  margin: -1px 4px 0 0;
	  width: 8px;
	}

	.header-menu-link li ul {
	  left: 30% !important;
	  right: 0 !important;
	}

	.header-menu-link li ul li a {
	  padding: 10px 0;
	  font-size: 1rem;
	  border-bottom: 1px solid #fff;
	}

	.menu {
		height: 6px;
		position: absolute;
		right: 17px;
		top: 20px;
		width: 20px;
		z-index: 320;
	}

	.fixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}

	.menu.active img {
		display: none;
	}

	.menu.active {
		background: url("/assets/img/common/menu_on.png") no-repeat center center;
		background-size: 20px 6px;
	}

	.menu-box {
		display: none;
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background-color: #363636;
		z-index: 300;
		overflow: auto;
	}

	.menu-inner {
		padding: 52px 0;
	}

	.menu-logo {
		width: 178px;
		margin: 0 auto 50px;
	}

	.menu-inner > ul {
		padding: 0;
	}

	.menu-inner > ul > li {
		border-top: 1px solid #666;
	}

	.menu-inner > ul > li a,
	.menu-inner > ul > li p {
		margin: 0;
		padding: 22px 0 23px;
		display: block;
		font-size: 1.4rem;
		text-align: center;
		color: #fff;
	}

	.menu-inner > ul > li > a {
		background: url("/assets/img/common/sp_icon02.png") no-repeat right 23px center;
		background-size: 8px auto;
	}

	.menu-inner > ul > li > p {
		background: url("/assets/img/common/sp_icon01.png") no-repeat right 23px center;
		background-size: 8px auto;
	}

	.menu-inner > ul > li > p.on {
		background-image: url("/assets/img/common/sp_icon03.png");
	}

	.menu-inner > ul > li ul {
		padding: 0;
		display: none;
	}

	.menu-inner > ul > li li a {
		padding: 13px 26px;
		text-align: left;
		background-color: #666;
		border-bottom: 1px solid #363636;
	}

	.menu-inner > ul > li li:last-child a {
		border: none;
	}

}

/*------------------------------------------------------------
	nav
------------------------------------------------------------*/
nav {
	text-align: center;
}

nav > ul {
	margin-bottom: 0;
}

nav > ul > li {
	padding-bottom: 41px;
	min-width: 115px;
	margin: 0 10px;
	display: inline-block;
}

nav > ul > li > a {
	display: block;
	font-size: 1.2rem;
}

nav > ul > li > a span {
	margin-bottom: 1px;
	display: block;
	font-size: 1.9rem;
	font-family: 'Arsenal', sans-serif;
}

.navi-box {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	padding: 80px 15px;
	box-sizing: border-box;
	background-color: #363636;
	z-index: 100;
}

.navi-box > div {
	max-width: 1455px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.navi-box .ttl {
	width: 10%;
	font-size: 4.5rem;
	color: #fff;
	text-align: left;
	font-family: 'Arsenal', sans-serif;
}

.navi-box ul {
	margin-top: -15px;
	width: 85.7%;
	display: flex;
	flex-wrap: wrap;
	text-align: left;
}

.navi-box ul li {
	margin-top: 15px;
	width: 23.2%;
	text-align: left;
}

.navi-box ul li:not(:nth-child(4n)) {
	margin-right: 2.2%;
}

.navi-box ul li a {
	display: block;
}

.navi-box ul li a:hover {
	opacity: 0.7;
}

.navi-box ul li p {
	margin-top: 14px;
	font-size: 1.3rem;
	color: #fff;
	background: url("/assets/img/common/icon01.png") no-repeat right center;
	background-size: 5px auto;
}

.navi-box ul li a .photo {
	overflow: hidden;
}

.navi-box ul li a .photo img {
	width: 100%;
	transition-duration: 0.3s;
}

.navi-box ul li a:hover .photo img {
	transform: scale(1.1);
	transition-duration: 0.3s;
}

@media all and (max-width: 1500px) {
	nav > ul > li {
		margin: 0;
	}
}

@media all and (max-width: 1340px) {
	nav > ul > li {
		min-width: 80px;
	}

	nav > ul > li a {
		font-size: 1.1rem;
	}

	nav > ul > li > a span {
		font-size: 1.6rem;
	}

	.navi-box .ttl {
		font-size: 4rem;
	}
}

@media all and (max-width: 1140px) {
	nav {
		display: none;
	}

}

/*------------------------------------------------------------
	com-box
------------------------------------------------------------*/
.com-box {
	margin: 0 auto;
	max-width: 1480px;
	padding: 0 15px;
}
.com-box-min {
	margin: 0 auto;
	max-width: 800px;
	padding: 0 15px;
}
.com-box .about {
	margin: 0 auto 80px auto;
	max-width: 900px;
	padding: 0 15px;
}
.com-box .seminar {
	margin: 0 auto 80px auto;
	max-width: 900px;
	padding: 0 15px;
}


.com-box .row.justify-content-center{
	line-height: 1.8;
}

.com-box .row.justify-content-center h2 span{
	display: inline-block;
	margin-bottom: 5px;
}
/* .press-area .com-box .row.justify-content-center h2{
	text-align: center;
} */
.press-area .com-box .row.justify-content-center h2 span.title-sub{
	font-size: 80%;
	font-weight: normal;
	margin-bottom: 10px;
}

.com-box .row.justify-content-center h4{
	margin: 30px 0 20px 0;
}

.com-box .nav-link{
	padding: 1rem 3rem!important;
	margin: 2px;
}

.com-box .nav-tabs .nav-item.show .nav-link, .com-box .nav-tabs .nav-link.active{
  border-color: #dee2e6!important;
	color: #495057!important;
	background-color: #fff!important;
}

.com-box .nav-tabs .nav-link{
	border-radius: 0!important;
}

.com-box .nav-tabs{
	border-bottom: none!important;
}

@media all and (max-width: 1024px) {
	.com-box {
		max-width: inherit;
		padding: 0 15px;
	}
	.com-box-min {
		max-width: inherit;
		padding: 0 15px;
	}
	.com-box .about {
		padding: 0;
	}
	.com-box .seminar {
		padding: 0;
	}
}

/*------------------------------------------------------------
	h1
------------------------------------------------------------*/
#main div.page-title {
	margin-bottom: 100px;
}

#main div.page-title span {
	margin-right: 37px;
	display: inline-block;
	font-size: 6rem;
	font-family: 'Arsenal', sans-serif;
	vertical-align: -13px;
	text-transform: uppercase;
}

#main div.page-title h1 {
	display: inline;
	margin-bottom: 100px;
	color: #333;
	font-size: 1.9rem;
	letter-spacing: -1px;
}


#main div.page-title h1.page-title-jp {
	font-size: 5rem;
}




@media all and (max-width: 1024px) {
	#main div.page-title {
		text-align: center;
		margin-bottom: 38px;
	}

	#main div.page-title span {
		margin: 0 0 9px;
		display: block;
		font-size: 3.66rem;
	}

	#main div.page-title h1 {
		font-size: 1.26rem;
	}
	#main div.page-title h1.page-title-jp {
		font-size: 3rem;
	}

}

/*------------------------------------------------------------
	headLine
------------------------------------------------------------*/
#main .headLine {
	margin-bottom: 0;
	font-size: 1.6rem;
	font-weight: 700;
}

#main .headLine span {
	margin-bottom: 26px;
	display: block;
	font-size: 5rem;
	font-weight: 400;
	font-family: 'Arsenal', sans-serif;
	letter-spacing: -1px;
}

@media all and (max-width: 1024px) {
	#main .headLine {
		margin-bottom: 24px;
		font-size: 1.26rem;
		text-align: center;
	}

	#main .headLine span {
		margin-bottom: 6px;
		font-size: 2.66rem;
	}
}

/*------------------------------------------------------------
	line
------------------------------------------------------------*/
#main .line {
	display: inline-block;
	width: 40px;
	height: 1px;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -1px;
	background-color: #333333;
}

@media all and (max-width: 1024px) {
	#main .line {
		width: 25px;
	}
}

/*------------------------------------------------------------
	com-link
------------------------------------------------------------*/
#main .com-link {
	font-family: 'Arsenal', sans-serif;
	font-size: 1.9rem;
	text-align: right;
}

#main .com-link a {
	position: relative;
	padding-left: 54px;
	display: inline-block;
	overflow: hidden;
}

#main .com-link a:hover {
	color: #ccc;
}

@media all and (max-width: 1024px) {
	#main .com-link {
		margin-bottom: 0;
		font-size: 1.26rem;
		text-align: center;
	}

	#main .com-link a {
		padding-left: 36px !important;
	}

	#main .com-link a:hover {
		color: #000;
	}

	#main .com-link a .line {
		width: 27px;
	}

}

/*------------------------------------------------------------
	com-link-ul
------------------------------------------------------------*/
#main .com-link-ul {
	margin: -20px 0 80px;
	text-align: center;
	padding-left: 0;
}

#main .com-link-ul-jp {
	margin: -20px 0 80px;
	text-align: left;
	padding-left: 0;
}

#main .com-link-ul li {
	margin-left: 40px;
	display: inline-block;
}

#main .com-link-ul-jp li {
	margin-bottom: 15px;
}

#main .com-link-ul li a {
	padding-left: 50px;
	display: block;
	position: relative;
	font-size: 1.9rem;
	overflow: hidden;
	/*font-family: 'Arsenal', sans-serif;*/
}

#main .com-link-ul-jp li a {
	padding-left: 50px;
	display: block;
	position: relative;
	font-size: 1.7rem;
	overflow: hidden;
	/*font-family: 'Arsenal', sans-serif;*/
}

#main .com-link-ul li a:hover {
	color: #ccc;
}

@media all and (max-width: 1200px) {
	#main .com-link-ul {
		margin-top: -32px;
	}
}

@media all and (max-width: 1024px) {
	#main .com-link-ul {
		padding: 0;
		margin: 0 0 38px;
		text-align: center;
	}

	#main .com-link-ul li {
		margin: 0 21px;
	    text-align: left;
	    width: 100%;
	    margin-left: 0;
	}

	#main .com-link-ul li a {
		padding-left: 35px;
		font-size: 1.26rem;
	}

	#main .com-link-ul li a:hover {
		color: #000;
	}

}

@media all and (max-width: 375px) {
	#main .com-link-ul li {
		margin: 0 10px;
	}

}

/*------------------------------------------------------------
	com-more
------------------------------------------------------------*/

#main .com-more {
	margin-bottom: 113px;
}

#main .com-more .photo {
	margin-left: -50%;
	width: 83.3%;
	float: right;
}

#main .com-more .text-box {
	padding-bottom: 21px;
	padding-top: 30px;
	width: 36%;
	display: flex;
	align-items: center;
}

#main .com-more .text-box .inner {
	padding: 59px 0px 64px;
	position: relative;
	width: 100%;
	background-color: #fff;
}

#main .com-more .text-box .com-link {
	position: absolute;
	right: 77px;
	bottom: 61px;
}

#main .com-more .photo {
	overflow: hidden;
}

#main .com-more .photo a {
	display: block;
}

#main .com-more .photo img {
	-webkit-transition: 0.3s all;
	-ms-transition: 0.3s all;
	-o-transition: 0.3s all;
	transition: 0.3s all;
}


#main .com-more .float-left {
	margin: 0 -50% 0 0;
}

#main .com-more .text-box.float-right .inner {
	padding-left: 60px;
}

#main .com-more .text-box.float-right {
	padding: 30px 0 0;
}

#main .com-more .text-box.float-right .com-link {
	right: 13px;
}

@media all and (max-width: 1400px) {
	#main .com-more .text-box .com-link {
		bottom: 10px;
	}
}

@media all and (min-width: 1025px) {
	#main .com-more .photo a:hover img {
		transform: scale(1.1);
		-webkit-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
	}
}

@media all and (max-width: 1024px) {
	#main .com-more {
		margin-bottom: 22px;
	}

	#main .com-more .photo {
		margin: 0;
		width: auto;
		float: none !important;
	}

	#main .com-more .text-box {
		padding: 0 !important;
		margin: -19px 19px 0;
		width: auto;
		float: none !important;
	}

	#main .com-more .text-box .inner {
		padding: 29px 0;
	}

	#main .com-more .text-box .com-link {
		position: static;
		right: auto;
		bottom: auto;
		text-align: center;
	}

	#main .com-more .text-box.float-right .inner {
		padding-left: 0;
	}

}

/*------------------------------------------------------------
	com-personal
------------------------------------------------------------*/

#main .com-personal {
	margin-bottom: 116px;
	border-left: 2px solid #BFBFBF;
}

#main .com-personal .text-box {
	padding: 30px 0 0 50px;
	position: relative;
	width: 30%;
}

#main .com-personal .text-box .com-link {
	position: absolute;
	left: 53px;
	bottom: 35px;
}

#main .com-personal .text-box .com-link a {
	padding-left: 58px;
}

#main .com-personal .photo {
	width: 66.8%;
}

#main .com-personal .photo .inner {
	margin-bottom: 42px;
}

#main .com-personal .headLine {
	font-size: 1.6rem;
}

#main .com-personal .headLine span {
	margin-bottom: 24px;
	font-size: 4rem;
}

#main .com-personal .photo p {
	margin-right: 20%;
	text-align: justify;
	font-size: 1.6rem;
	line-height: 2.5;
}

#main .com-personal .photo .inner {
	overflow: hidden;
}

#main .com-personal .photo .inner img {
    -webkit-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
    transition: 0.3s all;
}

@media all and (min-width: 1025px) {
	#main .com-personal .photo .inner a:hover img {
		transform: scale(1.1);
		-webkit-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
	}
}

@media all and (max-width: 1024px) {
	#main .com-personal {
		margin: 0 0 51px;
		padding: 15px 0 0;
		display: block !important;
		border-top: 1px solid #BFBFBF;
		border-left: none;
	}

	#main .com-personal .text-box {
		margin-bottom: 29px;
		padding: 0;
		width: auto;
	}

	#main .com-personal .photo {
		width: auto;
	}

	#main .com-personal .photo .inner {
		margin-bottom: 16px;
	}

	#main .com-personal .photo .inner img {
		width: 100%;
	}

	#main .com-personal .headLine span {
		margin-bottom: 6px;
		font-size: 2.66rem;
	}

	#main .com-personal .headLine {
		margin-bottom: 26px;
		font-size: 1.26rem;
	}

	#main .com-personal .text-box .com-link {
		position: static;
		left: auto;
		bottom: auto;
	}

	#main .com-personal .photo p {
		margin: 0;
		line-height: 2.35;
		font-size: 1.13rem;
	}
}

/*------------------------------------------------------------
	com-other
------------------------------------------------------------*/
#main .com-other {
	margin-bottom: 108px;
	padding: 29px 51px 57px;
	border-left: 2px solid #BFBFBF;
}

#main .com-other .headLine {
	width: 27.2%;
	float: left;
}

#main .com-other .headLine span {
	margin-bottom: 24px;
	font-size: 4rem;
}

#main .com-other .inner {
	margin-top: 19px;
	width: 67.9%;
	float: right;
}
#main .com-other .inner p {
	line-height: 2;
	margin: 0 auto 30px;
}

@media all and (max-width: 1024px) {
	#main .com-other {
		margin-bottom: 29px;
		padding: 32px 0;
		border-left: none;
		border-top: 1px solid #BFBFBF;
	}

	#main .com-other .headLine {
		margin-bottom: 42px;
		width: auto;
		float: none;
	}

	#main .com-other .headLine span {
		margin-bottom: 9px;
		font-size: 2.66rem;
	}

	#main .com-other .inner {
		margin-top: 0;
		width: auto;
		float: none;
	}
}

/*------------------------------------------------------------
	com-img-ul
------------------------------------------------------------*/

#main .com-img-ul {
	margin: -20px 5% 80px;
	padding: 0;
	flex-wrap: wrap;
}

#main .com-img-ul01 {
	justify-content: center;
}

#main .com-img-ul li {
	margin: 20px 1.25% 0 0;
	width: calc(100% / 6);
}

#main .com-img-ul li a {
	display: block;
}

#main .com-img-ul li:nth-child(6n) {
	margin-right: 0;
}

#main .com-img-ul li .photo {
	margin-bottom: 24px;
	overflow: hidden;
}

#main .com-img-ul li .photo img {
	width: 100%;
}

#main .com-img-ul li h3 {
	font-size: 1.9rem;
	text-align: center;
	transition: .3s;
}

#main .com-img-ul li h3 span {
	margin-top: 6px;
	display: block;
	font-size: 1.6rem;
	font-family: 'Arsenal', sans-serif;
}

#main .com-img-ul li a .photo img {
    -webkit-transition: 0.3s all;
    -ms-transition: 0.3s all;
    -o-transition: 0.3s all;
    transition: 0.3s all;
}

@media all and (min-width: 1025px) {

	#main .com-img-ul li a:hover .photo img {
		transform: scale(1.1);
		-webkit-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
	}

	#main .com-img-ul li a:hover h3 {
		color: #ccc;
	}
}


@media all and (max-width: 1024px) {
	#main .com-img-ul {
		margin: -12px 1px 20px;
		justify-content: space-between;
	}

	#main .com-img-ul li {
		margin: 12px 0 0;
		/*width: 46.3%;*/
		width: 50%;
	}

	#main .com-img-ul li h3 {
		font-size: 1.26rem;
	}

	#main .com-img-ul li h3 span {
		margin-top: 4px;
		font-size: 1.08rem;
	}

	#main .com-img-ul li .photo {
		margin-bottom: 16px;
	}

}


/*------------------------------------------------------------
	com-btn
------------------------------------------------------------*/
#main .com-btn {
	max-width: 250px;
	font-size: 1.6rem;
}
#main .com-btn2 {
	max-width: 500px;
}


#main .com-btn a {
	padding: 22px 10px 23px;
	color: #000;
	display: block;
	font-weight: 700;
	text-align: center;
	background-color: #fff;
	border: 1px solid #CCC;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	overflow: hidden;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
}

@media all and (min-width: 1025px) {
	#main .com-btn a:hover {
		color: #fff;
		background-color: #333;
		border-color: #333;
	}
}

@media all and (max-width: 1024px) {
	#main .com-btn  {
		margin: 0 auto;
		max-width: 265px;
		font-size: 1.1rem;
	}
	#main .com-btn2  {
		max-width: 500px;
	}
	#main .com-btn a {
		padding: 14px 10px;
	}
}

/*------------------------------------------------------------
	com-btn-black
------------------------------------------------------------*/
#main .com-btn.com-btn-black a {
	padding: 22px 10px 23px;
	color: #fff;
	display: block;
	font-weight: 700;
	text-align: center;
	background-color: #000;
	border: 1px solid #000;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	overflow: hidden;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
}

@media all and (min-width: 1025px) {
	#main .com-btn.com-btn-black a:hover {
		color: #000;
		background-color: #fff;
		border-color: #ccc;
	}
}

@media all and (max-width: 1024px) {
	#main .com-btn.com-btn-black  {
		margin: 0 auto;
		max-width: 265px;
		font-size: 1.1rem;
	}

	#main .com-btn.com-btn-black a {
		padding: 14px 10px;
	}
}

/*------------------------------------------------------------
	com-btn01
------------------------------------------------------------*/
#main .com-btn01 {
	margin: 0 0 80px 0;
}

#main .com-btn01 a,
#main .com-btn01 input {
	color: #333;
	cursor: pointer;
	background-color: #FFF;
	border-color: #333;
}

#main .com-btn01 input {
	width: 100%;
	height: 70px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
	transition: .3s;
	border-radius: 0;
	background-color: #333;
	border: 1px solid #333;
}

@media all and (min-width: 1025px) {
	#main .com-btn01 a:hover,
	#main .com-btn01 input:hover {
		background-color: #333;
		color: #FFF;
	}
}

@media all and (max-width: 1024px) {
	#main .com-btn01 {
		margin-bottom: 50px;
		font-size: 1.23rem;
	}
}

/*------------------------------------------------------------
	com-form
------------------------------------------------------------*/
#main .com-form {
	margin-bottom: 148px;
}

#main .com-form .lBox {
	padding: 32px 56px;
	width: 29.6%;
	border-left: 1px solid #bebebe;
}

#main .com-form .lBox h2 {
	margin-bottom: 44px;
	text-align: center;
}

#main .com-form .lBox h2 > span {
	display: block;
}

#main .com-form .lBox h2 .tel {
	margin-bottom: 19px;
	font-size: 5rem;
	font-family: 'Arsenal', sans-serif;
	letter-spacing: 1px;
}

#main .com-form .lBox h2 .txt span {
	padding: 6px 18px 8px;
	padding: 5px;
	color: #333;
	display: inline-block;
	font-size: 1.4rem;
	background-color: #F7F7F7;
	border-radius: 15px;
}

#main .com-form .lBox p {
	font-size: 1.6rem;
	line-height: 2.5;
	text-align: justify;
	text-justify: inter-ideograph;
    -ms-text-justify: inter-ideograph;
}

#main .com-form .mail-form table {
	width: 100%;
	border-collapse: collapse;
}

#main .com-form .mail-form table th,
#main .com-form .mail-form table td {
	text-align: left;
	vertical-align: middle;
}

#main .com-form .mail-form table th {
	width: 31.1%;
	font-weight: 500;
	text-align: center;
	line-height: 1.75;
	background-color: #F7F7F7;
}

#main .com-form .mail-form table th h3 {
	font-size: 1.6rem;
}

#main .com-form .mail-form table th .must {
	margin: 0 9px 0 9px;
	padding: 5px 15px;
	color: #333;
	font-size: 1.4rem;
	font-weight: 400;
	display: inline-block;
	vertical-align: middle;
	background-color: #fff;
	border-radius: 15px;
}

#main .com-form .mail-form table input[type="text"],
#main .com-form .mail-form table input[type="mail"],
#main .com-form .mail-form table input[type="tel"],
#main .com-form .mail-form table textarea {
	padding: 0 32px;
	width: 100%;
	height: 70px;
	line-height: 70px;
	font-size: 1.6rem;
	border-radius: 1px;
	border: 1px solid #ccc;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-color: #fff;
}

#main .com-form .mail-form table textarea {
	height: 155px;
}


#main .com-form .mail-form table input::-webkit-input-placeholder,
#main .com-form .mail-form table textarea::-webkit-input-placeholder{
	color: #ccc;
	opacity:1;
}

#main .com-form .mail-form table input:-moz-placeholder,
#main .com-form .mail-form table textarea:-moz-placeholder {
	color: #ccc;
	opacity:1;
}

#main .com-form .mail-form table input::-moz-placeholder,
#main .com-form .mail-form table textarea::-moz-placeholder {
	color: #ccc;
	opacity:1;
}

#main .com-form .mail-form table input:-ms-input-placeholder,
#main .com-form .mail-form table textarea:-ms-input-placeholder {
	color: #ccc;
	opacity:1;
}

#main .com-form .mail-form table select {
	padding-left: 40px;
	width: 100%;
	height: 70px;
	display: inline-block;
	vertical-align: middle;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 1px;
	border: 1px solid #ccc;
	background: url("/assets/img/page/select_bg.png") no-repeat left 21px center #fff;
	background-size: 8px auto;
}

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

#main .com-form .mail-form table .w35 {
	width: 35px;
}

#main .com-form .mail-form table .empty {
	height: 20px;
}

#main .com-form .mail-form table .txt-ul {
	padding: 0;
	margin: 10px 0 17px;
}

#main .com-form .mail-form table .txt-ul li {
	width: 46.8%;
	float: left;
}

#main .com-form .mail-form table .txt-ul li:nth-child(2n) {
	width: 50%;
	float: right;
}

#main .com-form .mail-form table .txt-ul li.txt {
	padding-top: 10px;
	font-size: 1.3rem;
	text-align: center;
	line-height: 1.4;
}

#main .com-form .mail-form table .txt-ul li.txt a {
	padding-bottom: 3px;
	display: inline-block;
	border-bottom: 1px solid #333;
}

@media all and (min-width: 1025px) {
	#main .com-form .mail-form table .txt-ul li.txt a:hover {
		color: #ccc;
	}

}
#main .com-form .mail-form .check {
	margin: 45px 0 44px;
	text-align: center;
	color: #333;
}

#main .com-form .mail-form .check a {
	padding-bottom: 3px;
	display: inline-block;
	border-bottom: 1px solid #333;
}

#main .com-form .mail-form .check input {
	margin-right: 7px;
}

#main .com-form .mail-form .check a:hover {
	border-color: #fff;
}

#main .com-form .mail-form .com-btn {
	margin: 0 auto;
	padding: 0;
	max-width: 450px;
}

#main .com-form .form  {
	width: 66.8%;
}

@media all and (max-width: 1100px) {
	#main .com-form .lBox h2 .tel {
		font-size: 4.5rem;
	}
}

@media all and (max-width: 1320px) {
	#main .com-form .mail-form table select {
		font-size: 1.35rem;
		padding-left: 8px;
		background-position: left 2px center;
	}

	#main .com-form .mail-form table input[type="text"],
	#main .com-form .mail-form table input[type="mail"],
	#main .com-form .mail-form table input[type="tel"],
	#main .com-form .mail-form table textarea {
		font-size: 1.4rem;
	}
}

@media all and (max-width: 1024px) {
	#main .com-form {
		margin-bottom: 58px;
	}

	#main .com-form .lBox {
		padding: 36px 0 27px;
		width: auto;
		float: none !important;
		border-top: 1px solid #bebebe;
		border-left: none;
	}

	#main .com-form .form {
		width: auto;
		float: none !important;
	}

	#main .com-form .lBox h2 {
		margin-bottom: 31px;
	}

	#main .com-form .lBox h2 .tel {
		margin-bottom: 5px;
		font-size: 3.33rem;
	}

	#main .com-form .lBox h2 .txt span {
		padding: 5px 12px 7px;
		font-size: 1.04rem;
	}

	#main .com-form .lBox p {
		font-size: 1.13rem;
	}

	#main .com-form .lBox p {
		font-size: 1.13rem;
		line-height: 2.35;
	}

	#main .com-form .mail-form table th, #main .com-form .mail-form table td {
		width: 100% !important;
		float: left !important;
	}

	#main .com-form .mail-form table th {
		padding: 13px 0 13px 5px;
		font-size: 1.08rem;
	}

	#main .com-form .mail-form table th h3 {
		font-size: 1.08rem;
	}

	#main .com-form .mail-form table th .must {
		margin: 0 14px;
		padding: 2px 10px;
		font-size: 0.93rem;
		vertical-align: 0;
	}

	#main .com-form .mail-form table .w35 {
		height: 13px;
	}

	#main .com-form .mail-form table input[type="text"], #main .com-form .mail-form table input[type="mail"], #main .com-form .mail-form table input[type="tel"], #main .com-form .mail-form table textarea {
		padding: 0 19px;
		font-size: 1.1rem;
		height: 47px;
		line-height: 47px;
	}

	#main .com-form .mail-form table .empty {
		height: 29px;
	}

	#main .com-form .mail-form table textarea {
		padding-top: 18px;
		height: 104px;
		line-height: 1.5;
	}

	#main .com-form .mail-form table .txt-ul {
		margin: 0;
	}

	#main .com-form .mail-form table .txt-ul li {
		width: 100% !important;
		float: none !important;
	}

	#main .com-form .mail-form table .txt-ul li:not(:last-child) {
		margin-bottom: 10px;
	}

	#main .com-form .mail-form table select {
		height: 47px;
		padding-left: 25px;
		line-height: inherit;
		font-size: 1.08rem;
		background-size: 6px auto;
		background-position: left 15px center;
	}

	#main .com-form .mail-form table .txt-ul li.txt {
		padding-top: 5px;
		font-size: 1.07rem;
		line-height: 1.65;
	}

	#main .com-form .mail-form table .txt-ul li.txt a {
		padding-bottom: 1px;
	}

	#main .com-form .mail-form table .txt-ul li.txt a:hover,
	#main .com-form .mail-form .check a:hover{
		border-color: #333;
	}

	#main .com-form .mail-form .check {
		font-size: 1.13rem;
		margin: 35px 0 29px;
	}

	#main .com-form .mail-form .check label {
		display: inline;
	}

	#main .com-form .mail-form .check input {
		vertical-align: middle;
	}

	#main .com-form .mail-form .com-btn input {
		height: 47px;
		font-size: 1.23rem;
	}
}

/*------------------------------------------------------------
	main-img
------------------------------------------------------------*/
#main .main-img {
	margin: 0 0 90px 120px;
}

#main .main-img img {
	width: 100%;
}

@media all and (max-width: 1024px) {
	#main .main-img {
		margin: 0 0 46px;
	}

}

/*------------------------------------------------------------
	com-img-box
------------------------------------------------------------*/
#main .com-img-box {
	margin-bottom: 61px;
	padding: 0 100px;
}

#main .com-img-box .photo {
	width: 20%;
}

#main .com-img-box .text-box {
	margin-top: 11px;
	width: 75%;
}

#main .com-img-box h2 {
	margin-bottom: 14px;
	font-size: 2.4rem;
	font-weight: 700;
}

#main .com-img-box h2 span {
	margin: -6px 30px 0 0;
	display: inline-block;
	vertical-align: middle;
	font-size: 5rem;
	font-weight: 400;
	font-family: 'Arsenal', sans-serif;
}

#main .com-img-box p {
	margin-bottom: 58px;
	line-height: 2.2;
}

#main .com-img-box p.lang{
	margin-bottom: 10px;
}

#main .com-img-box .ttl {
	margin-bottom: 60px;
	font-weight: 700;
}

#main .com-img-box h3 {
	margin-bottom: 27px;
	font-size: 1.6rem;
	font-weight: 700;
}

#main .com-img-box h3 span {
	padding-right: 17px;
	margin: -4px 23px 0 0;
	font-size: 2.7rem;
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	font-weight: 500;
	font-family: 'Arsenal', sans-serif;
	border-right: 1px solid #333;
}

@media all and (max-width: 1024px) {
	#main .com-img-box {
		margin: 0 2px 30px;
		padding: 0;
	}

	#main .com-img-box .photo {
		width: auto;
		float: none !important;
		text-align: center;
	}

	#main .com-img-box .photo img {
		width: 250px;
	}

	#main .com-img-box .text-box {
		margin-top: 30px;
		width: auto;
		float: none !important;
	}

	#main .com-img-box h2 {
		margin-bottom: 20px;
		font-size: 1.4rem;
		text-align: center;
	}

	#main .com-img-box h2 span {
		margin: 0 0 7px;
		display: block;
		font-size: 2.66rem;
	}

	#main .com-img-box p {
		margin-bottom: 40px;
		line-height: 2.35;
		font-size: 1.4rem;
	}

	#main .com-img-box .ttl {
		margin-bottom: 28px;
		text-align: center;
	}

	#main .com-img-box h3 {
		margin-bottom: 19px;
		font-size: 1.6rem;
	}

	#main .com-img-box h3 span {
		padding-right: 15px;
		margin: -4px 15px 0 0;
		font-size: 2.2rem;
	}

}

/*------------------------------------------------------------
	com-ttl
------------------------------------------------------------*/
#main .com-ttl {
	margin-bottom: 65px;
	padding: 21px 42px 21px 42px;
	position: relative;
	border-left: 1px solid #BFBFBF;
}

#main .com-ttl .com-link {
	margin-top: -22px;
	position: absolute;
	right: 0;
	top: 50%;
}

#main .com-ttl h2 {
	margin-bottom: 0;
	font-size: 1.6rem;
}

#main .com-ttl h2 span {
	margin-bottom: 22px;
	display: block;
	font-size: 5rem;
	font-family: 'Arsenal', sans-serif;
}

@media all and (max-width: 1024px) {
	#main .com-ttl {
		margin-bottom: 20px;
		padding: 32px 0 0;
		position: static;
		border-left: none;
		border-top: 1px solid #BFBFBF;
	}

	#main .com-ttl .com-link {
		margin-top: 0;
		position: static;
		right: inherit;
		top: inherit;
	}

	#main .com-ttl h2 {
		margin-bottom: 32px;
		font-size: 1.26rem;
		text-align: center;
	}

	#main .com-ttl h2 span {
		margin-bottom: 10px;
		font-size: 2.66rem;
	}

}

/*------------------------------------------------------------
	com-list
------------------------------------------------------------*/
#main .com-list {
	margin-bottom: 56px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

#main .com-list li {
	width: 23%;
	margin: 0 2.66% 60px 0;
}

#main .com-list li:nth-child(4n) {
	margin-right: 0;
}

#main .com-list p {
	margin-bottom: 0;
	font-size: 1.4rem;
	line-height: 2.14;
	transition: .3s;
}

#main .com-list .time {
	margin-bottom: 8px;
	font-size: 1.9rem;
	font-family: 'Arsenal', sans-serif;
	color: #aaa;
}

#main .com-list a:hover .time{
	color: #aaa!important;
}

#main .com-list .photo {
	margin-bottom: 23px;
	overflow: hidden;
}

#main .com-list .photo img {
	width: 100%;
	transition-duration: 0.3s;
}

#main .com-list a {
	display: block;
}

#main .com-list a:hover .photo img {
	transform: scale(1.1);
	transition-duration: 0.3s;
}

#main .com-list a:hover p {
	color: #ccc;
}

#main .com-list a:hover .time {
	color: #000;
}

@media all and (max-width: 1024px) {
	#main .com-list {
		margin-bottom: 30px;
		display: block;
	}

	#main .com-list li {
		width: auto;
		margin: 0 0 32px;
	}

	#main .com-list p {
		margin-bottom: 0;
		font-size: 1.26rem;
		line-height: 2.1;
	}

	#main .com-list .time {
		margin-bottom: 11px;
		font-size: 1.6rem;
	}

	#main .com-list .photo {
		margin-bottom: 15px;
	}

	#main .com-list a:hover .photo img {
		transform: none;
	}

	#main .com-list a:hover p {
		color: #000;
	}

}

/*------------------------------------------------------------
	com-page-navi
------------------------------------------------------------*/
#main .com-page-navi {
	margin-bottom: 124px;
	padding: 0;
	text-align: center;
}

#main .com-page-navi li {
	display: inline-block;
	font-size: 2.4rem;
}

#main .com-page-navi a {
	display: inline-block;
	font-family: 'Arsenal', sans-serif;
}

#main .com-page-navi a:hover {
	opacity: 0.7;
}

@media all and (max-width: 1024px) {
	#main .com-page-navi {
		margin-bottom: 50px;
	}

	#main .com-page-navi li {
		font-size: 1.6rem;
	}

}

/*------------------------------------------------------------
	com-photo-list
------------------------------------------------------------*/
#main .com-photo-list {
	margin-bottom: 50px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#main .com-photo-list li {
	width: 47.6%;
}

#main .com-photo-list .photo {
	margin-bottom: 35px;
	overflow: hidden;
}

#main .com-photo-list .photo img {
	width: 100%;
	transition-duration: 0.3s;
}

#main .com-photo-list a {
	display: block;
}

#main .com-photo-list .photo a:hover img {
	transform: scale(1.1);
	transition-duration: 0.3s;
}

#main .com-photo-list .text-link {
	margin-bottom: 29px;
}

#main .com-photo-list .text-link a {
	padding: 7px 180px 5px 32px;
	position: relative;
	font-size: 1.9rem;
	border-left: 1px solid #333;
}

#main .com-photo-list .text-link p {
	margin-bottom: 0;
	font-weight: 700;
}

#main .com-photo-list .text-link .more {
	margin-top: -14px;
	position: absolute;
	right: 0;
	top: 50%;
	overflow: hidden;
	font-family: 'Arsenal', sans-serif;
	padding-left: 65px;
}

#main .com-photo-list .icon-link {
	margin-bottom: 29px;
}

#main .com-photo-list .icon-link a {
	padding: 7px 15px 6px 61px;
	font-size: 1.9rem;
	font-weight: 700;
	background: url(/assets/img/page/icon02.png) no-repeat left 30px center, url(/assets/img/page/icon01.png) no-repeat right 5px center;
	background-size: 22px auto, 5px auto;
	border-left: 1px solid #333;
}

#main .com-photo-list .icon-link a:hover {
	color: #ccc;
}

@media all and (max-width: 1024px) {
	#main .com-photo-list {
		margin-bottom: 50px;
		display: block;
	}

	#main .com-photo-list li {
		width: auto;
		margin-bottom: 46px;
	}

	#main .com-photo-list .photo {
		margin-bottom: 12px;
	}

	#main .com-photo-list .photo a:hover img {
		transform: none;
	}

	#main .com-photo-list .text-link {
		margin-bottom: 11px;
	}

	#main .com-photo-list .text-link a {
		padding: 5px 129px 3px 23px;
		font-size: 1.26rem;
	}

	#main .com-photo-list .text-link .more {
		margin-top: -9px;
		padding-left: 44px;
	}

	#main .com-photo-list .text-link .more .line {
		width: 27px;
	}

	#main .com-photo-list .text-link01 a {
		font-size: 1.13rem;
	}

	#main .com-photo-list .icon-link {
		margin-bottom: 11px;
	}

	#main .com-photo-list .icon-link a {
		padding: 5px 15px 4px 41px;
		font-size: 1.13rem;
		background: url(/assets/img/page/icon02.png) no-repeat left 23px center, url(/assets/img/page/icon01.png) no-repeat right 5px center;
		background-size: 13px auto, 3px auto;
		border-left: 1px solid #333;
	}

	#main .com-photo-list .icon-link a:hover {
		color: #000;
	}

}

/*------------------------------------------------------------
	com-table
------------------------------------------------------------*/
#main .com-table {
	max-width: 1270px;
	margin: 0 auto 89px;
}

#main .com-table table {
	width: 100%;
	border-collapse: collapse;
}

#main .com-table th,
#main .com-table td {
	padding: 20px 22px;
	font-size: 1.6rem;
	font-weight: 500;
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	line-height: 2;
}

#main .com-table th {
	width: 27%;
	border-bottom-color: #333;
	border-top-color: #333;
	text-align: center;
	border-right: 65px solid #fff;
}

#main .com-table h3 {
	margin: 0;
	font-size: 1.6rem;
	font-weight: 600;
}

#main .com-table .cn {
	font-weight: 400;
}

#main .com-table .map {
	padding-left: 20px;
	color: #666;
	display: inline-block;
	background: url(/assets/img/page/icon03.png) no-repeat left center;
	background-size: 13px auto;
}

#main .com-table .map span,
#main .com-table .contact span {
	padding-bottom: 3px;
	border-bottom: 1px solid #666;
}

#main .com-table .map:hover,
#main .com-table .contact:hover {
	color: #333;
}

#main .com-table a.contact {
	padding-left: 16px;
	color: #666;
	background: url(/assets/img/page/icon04.png) no-repeat left center;
	background-size: 9px auto;
}

#main .com-table .link span {
	padding-bottom: 3px;
	border-bottom: 1px solid #666;
}

#main .com-table .link:hover {
	color: #333;
}

@media all and (max-width: 1024px) {
	#main .com-table {
		max-width: inherit;
		margin: 0 auto 42px;
	}

	#main .com-table table {
		border-top: 1px solid #333;
	}

	#main .com-table th,
	#main .com-table td {
		display: block;
		width: 100%;
		padding: 20px 0 24px;
		font-size: 1.13rem;
		border-bottom: 1px solid #333;
		border-top: none;
		line-height: 2.35;
	}

	#main .com-table th {
		padding: 26px 0 0;
		width: 100%;
		border: none;
	}

	#main .com-table h3 {
		font-size: 1.26rem;
	}

	#main .com-table .map {
		padding-left: 14px;
		background-size: 9px auto;
	}

	#main .com-table .map span {
		border-bottom-width: 1px;
	}

	#main .com-table .map:hover {
		color: #666;
	}

	#main .com-table .link {
		padding-left: 11px;
		background-size: 6px auto;
	}

	#main .com-table .link span {
		border-bottom-width: 1px;
	}

	#main .com-table .link:hover {
		color: #666;
	}

}

/*------------------------------------------------------------
	com-year
------------------------------------------------------------*/
#main .com-year {
	max-width: 1235px;
	position: relative;
	margin: 0 auto 100px;
	padding: 0 14% 28px 0;
}

#main .com-year:before {
	position: absolute;
	left: 37px;
	top: 0;
	bottom: 0;
	background-color: #000;
	width: 2px;
	content: "";
}

#main .com-year h3 {
	padding: 39px 0 37px 0;
	margin: 0;
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	background-color: #fff;
}

#main .com-year h3 .year {
	width: 15%;
	display: block;
	font-size: 4rem;
	font-family: 'Arsenal', sans-serif;
	font-style: italic;
}

#main .com-year h3 .text {
	width: 85%;
	display: block;
	font-size: 1.9rem;
	font-weight: 700;
}

#main .com-year dl {
	margin: 8px 0 14px 15.4%;
	line-height: 2.5;
}

#main .com-year dl dt {
	margin: 0;
	padding: 0;
	float: left;
	font-weight: 700;
}

#main .com-year dl dd {
	font-weight: 700;
	margin: 0;
	padding: 0 0 0 4.4em;
}

#main .com-year .grey-box {
	padding: 31px 35px;
	margin: 37px 0 0 15.4%;
	background-color: #F6F6F6;
	font-size: 1.4rem;
	line-height: 2.14;
}

#main .com-year .grey-box p {
	margin-bottom: 0;
}

@media all and (max-width: 1024px) {
	#main .com-year {
		max-width: inherit;
		margin: 0 auto 100px;
		padding: 0 0 20px 15px;
	}

	#main .com-year:before {
		left: 40px;
		width: 1px;
	}

	#main .com-year h3 {
		padding: 20px 0;
		line-height: 1.8;
	}

	#main .com-year h3 .year {
		width: 22%;
		font-size: 2.66rem;
	}

	#main .com-year h3 .text {
		width: 78%;
		font-size: 1.26rem;
	}

	#main .com-year dl {
		margin: 0 0 4px 22%;
		line-height: 2.35;
	}

	#main .com-year dl dt {
		font-size: 1.13rem;
	}

	#main .com-year dl dd {
		padding: 0 0 0 3em;
		font-size: 1.13rem;
	}

	#main .com-year .grey-box {
		padding: 20px 23px;
		margin: 29px 0 0 21%;
		font-size: 1.06rem;
		line-height: 2.18;
	}

}

/*------------------------------------------------------------
	com-ul
------------------------------------------------------------*/
#main .com-ul {
	margin-bottom: 130px;
}

#main .com-ul ul {
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

#main .com-ul li {
	width: 31.3%;
	margin: 0 3.05% 30px 0;
	list-style: none;
}

#main .com-ul li:nth-child(3n) {
	margin-right: 0;
}

#main .com-ul .photo {
	margin-bottom: 33px;
	overflow: hidden;
}

#main .com-ul .photo img {
	width: 100%;
	transition-duration: 0.3s;
}

#main .com-ul .photo a {
	display: block;
}

#main .com-ul .photo a:hover img {
	transform: scale(1.1);
	transition-duration: 0.3s;
}

#main .com-ul h3 {
	margin-bottom: 40px;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
}

#main .com-ul h3 span {
	margin-bottom: 10px;
	display: block;
	font-size: 2.1rem;
	font-weight: 700;
}

#main .com-ul .btn-link a {
	display: block;
	padding: 23px 30px 22px;
	font-size: 1.6rem;
	background: url(/assets/img/page/icon01.png) no-repeat right 24px center;
	background-size: 5px auto;
	border: 1px solid #ccc;
}

@media all and (min-width: 1025px) {
	#main .com-ul .btn-link:hover{
		text-decoration: none!important;
	}
	#main .com-ul .btn-link a:hover {
		background-color: #333;
		color: #fff;
		border-color: #333;
		background-image: url(/assets/img/page/icon05.png);
		text-decoration: none!important;
	}
}

@media all and (max-width: 1024px) {
	#main .com-ul {
		margin-bottom: 60px;
	}

	#main .com-ul ul {
		display: block;
	}

	#main .com-ul li {
		width: auto;
		margin: 0 0 34px;
	}

	#main .com-ul .photo {
		margin-bottom: 23px;
	}

	#main .com-ul .photo a:hover img {
		transform: none;
	}

	#main .com-ul h3 {
		margin-bottom: 26px;
		font-size: 1.13rem;
	}

	#main .com-ul h3 span {
		margin-bottom: 4px;
		font-size: 1.4rem;
	}

	#main .com-ul .btn-link a {
		padding: 14px 18px;
		font-size: 1.13rem;
		background-position: right 20px center;
		background-size: 3px auto;
	}

}

/*------------------------------------------------------------
	com-email
------------------------------------------------------------*/
.com-email {
    margin: 0 auto;
    padding: 0 15px;
    box-sizing: border-box;
    max-width: 1380px;
}

.com-email > img {
    margin-bottom: -419px;
}

.com-email form {
    margin: 0 98px;
    padding: 63px 92px 96px;
    background-color: #fff;
    position: relative;
    z-index: 1;
}

.com-email .h2-img {
    margin-bottom: 32px;
}

.com-email .h2-img img {
    width: 358px;
}

.com-email p {
    margin-bottom: 61px;
    line-height: 2.45;
}

.com-email h2 {
    margin-bottom: 29px;
    font-size: 2.9rem;	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    text-align: center;
    line-height: 1.5;
}

.com-email h2 span {
    margin: -6px 15px 0 0;
    padding: 5px 45px 6px;
    display: inline-block;
    vertical-align: middle;
    color: #333;
    font-size: 1.4rem;
    font-family: 'Noto Sans JP', sans-serif;
    background-color: rgba(247, 247, 247,1);
    border-radius: 20px;
}

.com-email .mail-list {
    margin-bottom: 50px;
    padding-left: 0;
}

.com-email .mail-list li {
    text-align: center;
}

.com-email .mail-list li + li {
    margin-top: 13px;
}

.com-email .mail-list input[type="email"] {
    padding: 0 33px;
    width: 72%;
    height: 70px;
    font-size: 1.6rem;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    border: none;
    background-color: rgba(247, 247, 247,1);
    border: 1px solid rgba(204, 204, 204,1);
}

.com-email .mail-list input[type="email"]::-webkit-input-placeholder {
	color: #ccc;
	opacity:1;
}

.com-email .mail-list input[type="email"]:-moz-placeholder {
	color: #ccc;
	opacity:1;
}

.com-email .mail-list input[type="email"]::-moz-placeholder {
	color: #ccc;
	opacity:1;
}

.com-email .mail-list input[type="email"]:-ms-input-placeholder {
	color: #ccc;
	opacity:1;
}

.com-email .check-box {
    text-align: center;
}

.com-email .check-box a {
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(120,120,120,1);
}

.com-email .check-box a:hover {
    border-bottom: 1px solid rgba(120,120,120,0);
}

.com-email .check-box a:hover {
    text-decoration: none;
}

.com-email .check-box input {
    margin: -3px 2px 0 0;
    vertical-align: middle;
}

.com-email .submit {
    padding-left: 0;
    margin: 38px 0 0;
    text-align: center;
}

.com-email .submit li {
    width: 47%;
    display: inline-block;
    text-align: center;
}

.com-email .submit li input {
    padding: 22px 0;
    width: 100%;
    color: #fff;
    display: block;
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    border: none;
    background: url("/assets/img/common/icon01.png") no-repeat right 25px center #363636;
    background-size: 6px auto;
	border: 1px solid #363636;
	transition: .3s;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
}

@media all and (min-width: 1025px) {
	.com-email .submit li input:hover {
		color: #363636;
		background-color: #fff;
		background-image: url("/assets/img/page/icon01.png");
	}
}

.com-email .forget {
    margin-top: 47px;
    font-size: 1.4rem;
    text-align: center;
}

.com-email .forget a {
    padding-bottom: 3px;
    color: #666;
    border-bottom: 2px solid rgba(147,147,147,1);
}

.com-email .forget a:hover {
    border-bottom: 2px solid rgba(147,147,147,0);
}

@media all and (max-width: 1024px) {
    .com-email {
        padding: 0 25px;
    }

    .com-email > img {
        margin-bottom: -83px;
    }

    .com-email form {
        margin: 0 16px;
        padding: 28px 22px 67px;
    }

    .com-email h2 {
        margin-bottom: 21px;
        font-size: 1.6rem;
    }

    .com-email h2 span {
        padding: 4px 5px;
        margin: 0 auto 10px;
        max-width: 150px;
        display: block;
        font-size: 1.1rem;
    }

    .com-email .h2-img {
        margin-bottom: 22px;
    }

    .com-email .h2-img img {
        max-width: 200px;
        width: inherit;
    }

    .com-email p {
		margin: 0 -35px 8px;
		line-height: 2.1;
	}

	.com-email .mail-list {
		margin: 0 -35px 27px;
	}

	.com-email .mail-list li + li {
		margin-top: 8px;
	}

	.com-email .mail-list input[type="email"] {
		padding: 0 20px;
		width: 100%;
		height: 47px;
		font-size: 1.05rem;
	}

	.com-email .check-box {
		font-size: 1.05rem;
	}

	.com-email .check-box a:hover {
		border-bottom: 1px solid rgba(120,120,120,1);
	}

	.com-email .submit {
		margin: 24px -25px 0;
	}

	.com-email .submit li {
		width: 100%;
		display: block;
	}

	.com-email .submit li input {
		padding: 16px 0;
		background: url("/assets/img/common/icon01.png") no-repeat right 15px center #363636;
		background-size: 3px auto;
	}

	.com-email .forget {
		margin-top: 33px;
		font-size: 0.95rem;
	}

	.com-email .forget a {
		padding-bottom: 1px;
	}

	.com-email .forget a:hover {
		border-bottom: 2px solid rgba(147,147,147,1);
	}

}

/*------------------------------------------------------------
	page-path
------------------------------------------------------------*/
#page-path {
	margin-top: 140px;
	margin-bottom: 49px;
    text-align: center;
}

#page-path li {
    margin-right: 20px;
    display: inline;
    color: #333;
    font-family: 'Arsenal', sans-serif;
    font-weight: 700;
}

#page-path li a {
    color: #333;
}

#page-path li + li {
    position: relative;
		display: inline-block;
}

#page-path li + li:before {
    width: 1px;
    position: absolute;
    top: 2px;
    left: -13px;
    bottom: 2px;
    border-left: 2px solid #CBCBCB;
    content: "";
}

#page-path li:first-child a {
	padding-left: 25px;
	background: url("/assets/img/common/icon02.png") no-repeat left center;
	background-size: 19px 15px;
}

#page-path li a:hover {
    color: #ccc;
}

#page-path li.home {
    font-size: 1.75rem;
}

@media all and (max-width: 1024px) {
	#page-path {
		margin-top: 50px;
		margin-bottom: 46px;
	}

	#page-path li {
		font-size: 1.05rem;
	}

	#page-path li:first-child a {
		padding-left: 20px;
		background-size: 13px auto;
	}

	#page-path li a:hover {
		color: #000;
	}

	#page-path li.home {
		font-size: 1.15rem;
	}

}

/*------------------------------------------------------------
	leadership-list
------------------------------------------------------------*/
#main .leadership-box {
    margin-bottom: 141px;
}

#main .leadership-list {
    margin: -20px -15px 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

#main .leadership-list li {
    padding: 18px 15px 0;
    width: 20%;
}

#main .leadership-list li a {
    display: block;
	border: 2px solid #fff;
}

#main .leadership-list li .photo-box {
	padding: 20px;
    margin-bottom: 18px;
	min-height: 360px;
	background-color: #F7f7f7;
}

#main .leadership-list li a:hover .photo-box {
    opacity: 0.7;
    transition: .3s;
}

#main .leadership-list li .photo-box img {
	max-height: 340px;
	width: auto;
}

#main .leadership-list li h3 {
    margin-bottom: 13px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-weight: 1.6rem;
    line-height: 1.8;

}

#main .leadership-list li a:hover h3 {
    color: #ccc;
    transition: .3s;
}

#main .leadership-list li dl {
    margin-left: 3px;
    font-size: 1.4rem;
    line-height: 1.78;
}

#main .leadership-list li dt {
    float: left;
    position: relative;
}

#main .leadership-list li dt:before {
    width: 1px;
    position: absolute;
    top: 4px;
    bottom: 4px;
    right: -12px;
    border-right: 1px solid #CBCBCB;
    content: "";
}

#main .leadership-list li dd {
    padding-left: 4.6em;
	text-align: justify;
	text-justify: inter-ideograph;
    -ms-text-justify: inter-ideograph;
    word-break: break-all;
}
@media all and (max-width: 1500px) {
    #main .leadership-list li .photo-box {
	min-height: 290px;
    }
}

@media all and (max-width: 1024px) {
    #main .leadership-box {
        margin-bottom: 66px;
    }

    #main .leadership-box .com-ttl {
        margin-bottom: 42px;
    }
    #main .leadership-list {
        display: block;
    }

    #main .leadership-list li {
        padding-top: 18px;
        width: auto;
    }

    #main .leadership-list li a {
        width: 100%;
        display: table;
		border: none;
    }

    #main .leadership-list li .photo-box,
    #main .leadership-list li .text-box {
        display: table-cell;
    }

    #main .leadership-list li .photo-box {
        width: 37%;
    }

    #main .leadership-list li .text-box {
        padding-left: 17px;
        width: 65%;
    }

    #main .leadership-list li h3 {
        font-size: 1.27rem;
        line-height: 2.1;
    }

	#main .leadership-list li a:hover h3 {
		color: #000;
	}

    #main .leadership-list li dl {
        font-size: 1.13rem;
        line-height: 1.85;
    }

    #main .leadership-list li a:hover h3 {
        color: #000;
    }

    #main .leadership-list li a:hover .photo-box {
        opacity: 1;
    }
}

/*------------------------------------------------------------
	com-line
------------------------------------------------------------*/
.com-line {
    height: 1px;
    border-bottom: 1px solid #BEBEBE;
	margin: 80px 0;
}
@media all and (max-width: 1024px) {
    .com-line {
        margin: 40px 0;
    }
}

/*------------------------------------------------------------
	com-detail
------------------------------------------------------------*/
.com-detail-about {
	margin: 0 auto;
	max-width: 800px;
	padding: 0 15px;
}

.com-detail h2 {
    margin-bottom: 95px;
    font-size: 3rem;
    text-align: center;
	font-weight: 700;
}

.com-detail h3 {
    margin: 48px 0 28px;
    font-size: 2.4rem;
    font-weight: 700;
}

.com-detail p {
    margin-bottom: 0;
    font-size: 1.7rem;
    line-height: 2.2;
}

.com-detail p a {
    padding-bottom: 4px;
    color: #999;
    border-bottom: 1px solid rgba(152,152,152,1);
}

.com-detail p span {
    color: #3366cc;
}

.com-detail .yumin {
	margin-bottom: 50px;
	font-size: 2rem;
	line-height: 2.63;
	letter-spacing: 1.5px;	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding: 0 5%;
}

.com-detail .yumin-title {
	margin-bottom: 60px;
	padding: 0 5%;
	font-size: 4rem;
	line-height: 1.8;
	letter-spacing: 1.5px;	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}


.com-box .yugo {
	margin-bottom: 30px;
	font-size: 1.8rem;
	line-height: 2.0;
}


.com-box .yugo-title,
.com-box-min .yugo-title{
	max-width: 900px;
	font-size: 2.6rem;
	text-align: left;
}

.com-detail ol {
    margin: 42px 0;
}

@media all and (min-width: 1025px) {
	.com-detail p a:hover {
		color: #333;
	}

}
@media all and (max-width: 1024px) {
}

.com-detail .txt-mb {
    margin-bottom: 30px;
}

.com-detail ol {
    margin-bottom: 42px;
}

.com-detail ol li {
    font-size: 1.7rem;
    list-style-type: decimal;
}

.com-detail ol li + li {
    margin-top: 17px;
}

.com-detail table {
    width: 100%;
    margin-top: 17px;
}

.com-detail table th,
.com-detail table td {
    padding: 31px 50px;
    font-size: 1.7rem;
    font-weight: 500;
    text-align: left;
    line-height: 2.3;
    vertical-align: middle;
    border: 1px solid #D1D1D1;
}

.com-detail table th {
    width: 35.5%;
    font-size: 1.9rem;
    border-right: none;
	font-weight: 700;
    background-color: #EDEDED;
}

.com-detail table td {
    width: 63.5%;
    border-left: none;
}

.com-detail table .ta-center {
    text-align: center;
}



@media all and (max-width: 1024px) {
    .com-detail {
        padding: 35px 0;
    }

    .com-detail h2 {
        margin-bottom: 34px;
        font-size: 1.8rem;
    }

    .com-detail h3 {
        margin-bottom: 15px;
        font-size: 1.6rem;
    }

    .com-detail p {
        font-size: 1.4rem;
    }

    .com-detail .txt-mb {
        margin-bottom: 29px;
    }

    .com-detail ol {
        margin-bottom: 35px;
    }
    .com-detail ol li {
        font-size: 1.15rem;
        line-height: 2.4;
    }

    .com-detail ol li + li {
        margin-top: 0;
    }

    .com-detail table {
        border-bottom: 1px solid #989898;
    }

    .com-detail table th,
    .com-detail table td {
        padding: 15px;
        width: 100%;
        display: block;
        line-height: 1.7;
        border: 1px solid #989898;
    }

    .com-detail table th {
        font-size: 1.27rem;
    }

    .com-detail table td {
        font-size: 1.4rem;
        border-top: none;
        border-bottom: none;
    }
	.com-detail .yumin {
        font-size: 1.4rem;
		letter-spacing: 0.5px;
		text-align: center;
        padding: 0;
		margin: 0;
    }
	.com-detail .yumin-title {
        font-size: 2.8rem;
		line-height: 1.7;
        padding: 0;
		text-align: center;
    }
}
@media all and (min-width: 621px) {
	.com-detail .yumin-title br.onlysp {
		display: none;
	}
	.com-detail .yumin br.onlysp {
		display: none;
	}
}
@media all and (min-width: 375px) {
	.com-detail .yumin-title br.onlysp374 {
		display: none;
	}
	.com-detail .yumin br.onlysp374 {
		display: none;
	}
}

/*------------------------------------------------------------
	com-pop
------------------------------------------------------------*/
.com-pop {
	display: none;
}

.com-pop .pop {
	max-width: 1200px;
	padding: 78px 110px 100px;
	background-color: #fff;
}

.com-pop h2 {
	margin-bottom: 67px;
	text-align: center;
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.9;
}

.com-pop .photo-box {
	margin-top: 12px;
	float: left;
	width: 25.5%;
}

.com-pop .photo-box .photo img{
	width: 70%;
	border: 1px solid #ddd;
}

.com-pop .photo-box .link {
	margin-top: 60px;
}

.com-pop .photo-box .link a:hover {
	opacity: 0.7;
}

.com-pop .text-box {
	float: right;
	width: 68%;
}

.com-pop .text-box p {
	margin-bottom: 66px;
	font-size: 1.85rem;
	line-height: 2.16;
}

.com-pop .text-box table {
	width: 100%;
	border-collapse: collapse;
}

.com-pop .text-box table th,
.com-pop .text-box table td {
	padding: 9px 30px;
	font-size: 1.7rem;
	font-weight: 500;
	text-align: left;
	vertical-align: middle;
	border-bottom: 12px solid #fff;
}

.com-pop .text-box table th {
	padding: 9px 5px;
	width: 18%;
	text-align: center;
	background-color: #EEEEEE;
}

.fancybox-content {
	padding: 0;
}

@media all and (max-width: 1024px) {
	.com-pop .pop {
		width: auto;
		padding: 40px 25px;
	}

	.com-pop h2 {
		margin-bottom: 20px;
		font-size: 1.6rem;
		line-height: 1.6;
	}

	.com-pop .photo-box {
		margin: 0 0 20px;
		float: none;
		width: auto;
		text-align: center;
	}

	.com-pop .photo-box .link {
		margin: 20px 20px 0;
	}

	.com-pop .photo-box .link img {
		width: 60%;
	}

	.com-pop .text-box {
		float: none;
		width: auto;
	}

	.com-pop .text-box p {
		margin-bottom: 20px;
		font-size: 1.3rem;
		line-height: 1.6;
	}

	.com-pop .text-box table th,
	.com-pop .text-box table td {
		padding: 9px;
		font-size: 1.3rem;
		border-bottom: 6px solid #fff;
	}

	.com-pop .text-box table th {
		padding: 9px;
		width: 36%;
	}

	.fancybox-slide--html {
		padding: 10px;
	}

	.fancybox-slide--html .fancybox-close-small {
		padding: 5px;
		right: -7px;
		top: -7px;
	}

	.fancybox-content {
		overflow-x: hidden;
	}
}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
footer {
	padding-bottom: 17px;
	background-color: #333;
}

.footer-top {
	padding: 110px 15px;
	border-bottom: 1px solid #fff;
}

.footer-read {
	max-width: 1430px;
	margin: 0 auto;
	padding: 0;
}

.footer-read li {
	width: 33.33%;
	float: left;
	color: #fff;
	text-align: center;
	padding: 0 10px;
}

.footer-read h3 {
	margin-bottom: 27px;
	font-size: 4rem;
	font-family: 'Arsenal', sans-serif;
	font-style: normal;
	text-transform: uppercase;
}

.footer-read p {
	margin-bottom: 65px;
	font-weight: 500;
	font-size: 1.3rem;
	line-height: 2.3;
}

.footer-link a {
	width: 230px;
	margin: 0 auto;
	padding: 9px 5px;
	display: block;
	color: #fff;
	font-family: 'Arsenal', sans-serif;
	border: 1px solid #fff;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
}

.footer-link a:before {
	margin-left: -1px;
	position: absolute;
	left: 50%;
	top: -41px;
	background-color: #fff;
	width: 0.5px;
	height: 41px;
	content: "";
}

.footer-link a:hover {
	background-color: #fff;
	color: #333;
}

.footer-inner {
	max-width: 1468px;
	margin: 0 auto;
	padding: 60px 15px 66px;
}

.footer-logo {
	width: 10%;
}

.footer-navi {
	width: 79.1%;
	padding: 0;
	margin: 0;
	display: flex;
	justify-content: space-between;
}

.footer-navi a {
	display: inline-block;
	color: #fff;
	font-size: 1.1rem;
	font-weight: 500;
}

.footer-navi a:hover {
	color: #ccc;
}

.footer-navi > li {
	margin-right: 3%;
}

.footer-navi img {
	margin: -1px 10px 0 0;
	display: inline-block;
	vertical-align: middle;
	width: 13px;
}

.footer-navi ul {
	padding: 0;
}

.footer-navi ul li {
	margin-bottom: 1px;
}

.footer-copyright {
	margin: 0 15px;
	letter-spacing: 0.6px;
	text-align: center;
	font-size: 1.2rem;
	font-family: 'Arsenal', sans-serif;
	color: #fff;
}

@media all and (max-width: 1024px) {
	footer {
		padding-bottom: 30px;
	}

	.footer-top {
		padding: 76px 25px 84px;
	}

	.footer-read {
		max-width: inherit;
	}

	.footer-read li {
		width: auto;
		float: none;
		padding: 0;
	}

	.footer-read li:not(:last-child) {
		margin-bottom: 53px;
	}

	.footer-read h3 {
		margin-bottom: 21px;
		font-size: 2.66rem;
	}

	.footer-read p {
		margin-bottom: 43px;
		font-size: 1.26rem;
		line-height: 2.1;
	}

	.footer-link a {
		width: auto;
		max-width: 233px;
		padding: 5px;
		font-size: 1.06rem;
	}

	.footer-link a:before {
		margin-left: 0;
		top: -28px;
		width: 1px;
		height: 28px;
	}

	.footer-link a:hover {
		background-color: transparent;
		color: #fff;
	}

	.footer-inner {
		max-width: inherit;
		padding: 64px 25px 66px;
	}

	.footer-logo {
		margin: 0 auto;
		width: 100px;
		float: none !important;
	}

	.footer-navi {
		float: none !important;
		width: auto;
		max-width: 325px;
		margin: 57px auto 0;
		flex-wrap: wrap;
	}

	.footer-navi a {
		font-size: 0.93rem;
	}

	.footer-navi a:hover {
		color: #fff;
	}

	.footer-navi > li {
		width: 50%;
		margin: 0 0 18px;
		padding-right: 10px;
	}

	.footer-navi img {
		margin: -1px 8px 0 0;
		width: 10px;
	}

	.footer-copyright {
		letter-spacing: 0.5px;
		font-size: 0.93rem;
	}

}

/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#main .index .top-ttl {
	padding: 231px 24px 276px;
	font-size: 5rem;
	letter-spacing: 0.5px;
	line-height: 1.5em;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

#main .index .top-ttl span.en01 {
	font-family: 'Arsenal', sans-serif;
	font-size: 4rem;
	letter-spacing: 0;
	margin-bottom: 10px;
	display: block;
}
#main .index .top-ttl span.ja01 {
	font-size: 2rem;
	display: block;
}

#main .index .top-ttl span.en02 {
	font-family: 'Arsenal', sans-serif;
	font-size: 2rem;
	letter-spacing: 0;
	margin-bottom: 10px;
	display: block;
}
#main .index .top-ttl span.ja02 {
	font-size: 3.6rem;
	display: block;
}
@media all and (max-width: 1200px) {
	#main .index .top-ttl span.en02 {
		font-size: 1.8rem;
	}
	#main .index .top-ttl span.ja02 {
		font-size: 3rem;
	}
	#main .index .com-box .top-ttl {
		padding-left: 60px;
		padding-right: 60px;
	}
}
@media all and (max-width: 1024px) {
	#main .index .top-ttl span.en02 {
		font-size: 1.8rem;
	}
	#main .index .top-ttl span.ja02 {
		font-size: 3rem;
	}
	#main .index .com-box .top-ttl {
		padding-left: 0;
		padding-right: 0;
	}
}

@media all and (max-width: 1100px) {
	#main .index .sec02 .inner .txt-box h2 {
		margin-right: 5%;
	}
}


#main .index .sec01 {
	height: 1080px;
	position: relative;
	z-index: 1 !important;
}

#main .index .sec01 .bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

#main .index .sec01 .com-box {
	position: relative;
	z-index: 1;
}

#main .index .sec01 .photo {
	position: absolute;
	right: 15px;
	top: -120px;
	width: 480px;
}

#main .index .sec01 .white-box {
	width: 48%;
	padding: 50px 5% 35px;
	position: absolute;
	left: 15px;
	top: 751px;
	z-index: 2;
	background-color: #fff;
	box-sizing: border-box;
}

#main .index .sec01 .white-box h2 {
	margin-bottom: 65px;
	font-size: 5rem;
	text-align: center;
	font-family: 'Arsenal', sans-serif;
}

#main .index .sec01 .white-box p {
	margin-bottom: 50px;
	font-size: 1.8rem;
	line-height: 2.32;
	letter-spacing: .8px;;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

#main .index .top-link {
	text-align: center;
	font-family: 'Arsenal', sans-serif;
}

#main .index .top-link a {
	position: relative;
	padding-top: 61px;
	font-size: 1.9rem;
	display: inline-block;
}

#main .index .top-link a .vLine {
	position: absolute;
	left: 50%;
	top: 0;
	background-color: #333;
	margin-left: -1px;
	width: 1px;
	height: 41px;
}

#main .index .top-link a:hover {
	color: #ccc;
}

#main .index .sec02 {
	padding: 800px 0 0 118px;
	position: relative;
	overflow: hidden;
}

#main .index .sec02 .bg {
	position: absolute;
	left: 0;
	top: 180px;
	width: 100%;
	height: 110%;
	background: url("/assets/img/index/bg03.jpg") no-repeat right top #e9f6fc;
	background-size: 100% auto;
}

#main .index .sec02 .inner {
	position: relative;
	z-index: 1;
	background: url("/assets/img/index/bg04.jpg") no-repeat center center;
	background-size: cover;
	box-sizing: border-box;
}

#main .index .sec02 .inner .txt-box {
	position: relative;
	width: 60%;
}

#main .index .sec02 .inner .txt-box h2 {
	margin-right: 12%;
	float: left;
	font-size: 5rem;
	font-family: 'Arsenal', sans-serif;
}

#main .index .sec02 .inner .txt-box p {
	margin-top: -14px;
	float: left;
	width: 54%;
	font-size: 1.7rem;
	color: #000;
	line-height: 2.9;
}

#main .index .sec02 .inner .txt-box .top-link {
	position: absolute;
	left: 52px;
	top: 75px;
}

#main .index .sec02 .inner .com-box {
	min-height: 800px;
	padding: 317px 0;
	position: relative;
}

#main .index .sec02 .inner .link-box {
	position: absolute;
	width: 32.5%;
	bottom: 0;
	right: 74px;
	padding: 75px 0;
	text-align: center;
	background-color: #fff;
}

#main .index .sec02 .inner .link-box ul {
	padding: 0;
}

#main .index .sec02 .inner .link-box li:not(:last-child) {
	margin-bottom: 29px;
}

#main .index .sec02 .inner .link-box a {
	font-size: 4rem;
	color: #222;
	display: inline-block;
	font-style: italic;
	font-family: 'Arsenal', sans-serif;
}

#main .index .sec02 .inner .link-box a:hover {
	color: #ccc;
}

#main .index .sec03 {
	padding: 140px 0 71px;
	overflow: hidden;
}

#main .index .sec04 {
	padding-top: 0px;
}

#main .index .sec03 h2 {
	font-size: 3rem;
	font-family: 'Arsenal', sans-serif;
		margin-bottom: 1em;
}
#main .index .sec03 p {
	margin-bottom: 1em;
	font-size: 1.4rem;
	line-height: 1.8em;
}

#main .index .sec03 .com-list {
	position: relative;
}

#main .index .sec03 .com-list:before {
	margin-top: -36px;
	position: absolute;
	right: 104%;
	top: 50%;
	width: 2000px;
	border-bottom: 1px solid #272727;
	height: 1px;
	content: "";
}

#main .index .sec03 .com-list:after {
	margin-top: -36px;
	position: absolute;
	left: 104%;
	top: 50%;
	width: 2000px;
	border-bottom: 1px solid #272727;
	height: 1px;
	content: "";
}

@media all and (max-width: 1500px) {
    #main .index .sec01 {
        height: 880px;
    }
    #main .index .sec01 .white-box {
        top: 500px;
    }
	#main .index .top-ttl {
		padding: 62px 10px 67px;
		font-size: 3.5rem!important;
	}

    #main .index .sec02 .bg {
        top: 150px!important;
    }

}

@media all and (max-width: 1100px) {
	#main .index .sec02 .inner .txt-box h2 {
		margin-right: 5%;
	}
}

@media all and (min-width: 768px) {
	#main .index .top-ttl br {
		display: none;
	}
}


@media all and (max-width: 1024px) {
	#main .index .top-ttl {
		padding: 92px 10px 69px;
		font-size: 2rem !important;
		text-align: center;
		line-height: 1.8em;
	}
	#main .index .top-ttl span.en02 {
		font-family: 'Arsenal', sans-serif;
		font-size: 1.5rem;
		display: block;
		margin-bottom: 10px;
	}
	#main .index .top-ttl span.ja02 {
		font-size: 2.6rem;
		display: block;
	}

	#main .index .sec01 {
		padding: 194px 0 10px;
		height: inherit;
	}

	#main .index .sec01 .bg {
		bottom: inherit;
		height: 360px;
		background-image: url("/assets/img/index/sp_bg01.jpg");
	}

	#main .index .sec01 .photo {
		position: static;
		width: auto;
		margin: 0 21px;
	}

	#main .index .sec01 .photo img {
		width: 100%;
	}

	#main .index .sec01 .white-box {
		width: auto;
		position: static;
		padding: 52px 3px;
	}

	#main .index .sec01 .white-box h2 {
		margin-bottom: 37px;
		font-size: 2.67rem;
	}

	#main .index .sec01 .white-box p {
		margin-bottom: 24px;
		font-size: 1.25rem;
	}

	#main .index .top-link a {
		padding-top: 51px;
		font-size: 1.25rem;
	}

	#main .index .top-link a .vLine {
		height: 39%;
	}

	#main .index .top-link a:hover {
		color: #000;
	}

	#main .index .sec02 {
		padding: 327px 0 0;
	}

	#main .index .sec02 .bg {
		bottom: inherit;
		height: 140%;
		top: 105px;
		background-image: url("/assets/img/index/sp_bg03.jpg");
		background-size: cover;
	}

	#main .index .sec02 .inner {
		background: none;
	}

	#main .index .sec02 .inner .txt-box {
		width: auto;
		padding: 93px 27px 67px;
		background: url("/assets/img/index/sp_bg04.jpg") no-repeat center top;
		background-size: cover;
	}

	#main .index .sec02 .inner .txt-box h2 {
		margin: 0 0 31px;
		float: none;
		text-align: center;
		font-size: 2.65rem;
	}

	#main .index .sec02 .inner .txt-box p {
		margin: 0 0 15px;
		float: none;
		width: auto;
		font-size: 1.25rem;
		line-height: 2.37;
	}

	#main .index .sec02 .inner .txt-box .top-link {
		position: static;
	}

	#main .index .sec02 .inner .com-box {
		min-height: inherit;
		padding: 0;
	}

	#main .index .sec02 .inner .link-box {
		position: relative;
		right: inherit;
		bottom: inherit;
		width: auto;
		padding: 65px 0 57px;
		margin: 0 25px -28px;
		z-index: 3;
	}

	#main .index .sec02 .inner .link-box li:not(:last-child) {
		margin-bottom: 18px;
	}

	#main .index .sec02 .inner .link-box a {
		font-size: 2.65rem;
	}

	#main .index .sec02 .inner .link-box a:hover {
		color: #000;
	}

	#main .index .sec03 {
		padding: 84px 0 60px;
	}

	#main .index .sec04 {
		padding-top: 24px;
	}
	#main .index .sec03 h2 {
		font-size: 2.65rem;
		text-align: center;
	}
	#main .index .sec03 p {
		font-size: 1.3rem;
	}

	#main .index .sec03 .com-list:before {
		display: none;
	}

	#main .index .sec03 .com-list:after {
		display: none;
	}

}

@media all and (min-width: 768px) and (max-width: 1024px) {
	#main .index .sec02 .bg {
		height: 170%;
		top: 150px;
		background-size: cover;
	}
}

.fadein {
    opacity : 0;
    transform : translate(0, 100px);
    transition : all 0.5s;
}

.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

.fadeInDown {
    opacity : 0;
	transform: translateY(-150px);
	transition: transform 1s cubic-bezier(0.165, 0.840, 0.440, 1.000), opacity 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) ;
	transition-delay: 0.5s;
}

.fadeInDown.scrollin {
    opacity : 1;
	transform: translateY(0px);
}

.fadeInRight {
    opacity : 0;
    transform : translate(100px, 0);
    transition : all 0.5s;
}

.fadeInRight.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

.page-img {
	opacity: 0;
    transform : translate(-100px, 0);
    transition : all 0.5s;
}

.page-img.fade {
    opacity : 1;
    transform : translate(0, 0);
}

.fadeInLeft {
	display: inline-block;
	width: 0;
	transition: all 1.5s cubic-bezier(0.165, 0.840, 0.440, 1.000);
	transition-delay: 0.5s;
	overflow: hidden;
	box-sizing: border-box;
	height: 150px;
	position: relative;
}

.fadeInLeft.scrollin {
	width: 100%;
}

.fadeInLeft div {
	position: absolute;
	display: block;
	width: 100%;
	top: 0;
	left: 0;
}


@media all and (min-width: 1025px) and (max-width: 1920px) {
	.fadeInLeft.scrollin {
		width: 100%;
		height: 180px;
	}

	/*.fadeInLeft span {
		width: 422px;
	}*/
}

@media all and (max-width: 1024px) {
	.widSpan {
		display: inline-block;
		width: 100%;
		text-align: left;
	}

	.fadeInLeft {
		height: 100px;
	}

	.fadeInLeft.scrollin {
	width: 100%;
		text-align: center;
	}

	.fadeInLeft div {
	width: 100%;
	}
}
@media all and (max-width: 600px) {
	.fadeInLeft {
		height: 150px;
	}
}
.backstretch {
	left: 0 !important;
	top: -200px !important;
	height: 90% !important;
}

.backstretch img {
	height: 100% !important;
	width: auto;
}

@media all and (max-width: 1024px) {
	.backstretch {
		top: -20% !important;
		width: 100% !important;
		height: 140% !important;
	}

	.backstretch img {
		height: 120% !important;
	}
}

.parallax {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

@media all and (max-width: 1024px) {
	.parallax {
		height: 355px;
	}

}

@media all and (min-width: 1141px) and (max-width: 1920px) {
	/*------------------------------------------------------------
		レイアウト
	------------------------------------------------------------*/
	body {
		font-size: 1.6rem;
	}

	#wrapper {
		padding-top: 60px;
	}

	/*------------------------------------------------------------
		ヘッダー
	------------------------------------------------------------*/
	header {
		padding: 15px 2% 0;
	}

	header .logo {
		width: 180px;
		left: 2%;
		top: 15px;
	}

	.header-box ul{
		padding-left: 0;
		margin-left: -80px;
	}

	.header-link {
		padding: 0 0 0 5px;
		width: 270px;
	}

	.header-link > li > a {
		padding: 20px 0;
	}

	.header-link > li > a > img {
		margin-right: 3px;
	}

	.header-link li ul li a {
		padding: 10px 0;
		font-size: 1.1rem;
	}

	/*------------------------------------------------------------
		nav
	------------------------------------------------------------*/
	nav > ul > li {
		padding-bottom: 20px;
		min-width: 80px;
		margin: 0 2px;
	}

	nav > ul > li > a {
		font-size: 1rem;
	}

	nav > ul > li > a span {
		font-size: 1.6rem;
	}

	.navi-box {
		padding: 60px 15px;
	}

	.navi-box .ttl {
		width: 14%;
		font-size: 3.5rem;
	}

	.navi-box ul li p {
		margin-top: 7px;
	}

	/*------------------------------------------------------------
		h1
	------------------------------------------------------------*/
	#main h1 {
		font-size: 1.5rem;
	}

	#main h1 span {
		margin-right: 20px;
		font-size: 4rem;
		vertical-align: -8px;
	}

	/*------------------------------------------------------------
		headLine
	------------------------------------------------------------*/
	#main .headLine {
		font-size: 1.4rem;
	}

	#main .headLine span {
		font-size: 3rem;
	}

	/*------------------------------------------------------------
		com-link
	------------------------------------------------------------*/
	#main .com-link {
		font-size: 1.6rem;
	}

	/*------------------------------------------------------------
		com-link-ul
	------------------------------------------------------------*/
	#main .com-link-ul li a {
		font-size: 1.6rem;
	}

	/*------------------------------------------------------------
		com-more
	------------------------------------------------------------*/
	#main .com-more {
		margin-bottom: 70px;
	}

	/*------------------------------------------------------------
		com-personal
	------------------------------------------------------------*/
	#main .com-personal {
		margin-bottom: 116px;
	}

	#main .com-personal .headLine {
		font-size: 1.4rem;
	}

	#main .com-personal .headLine span {
		font-size: 3rem;
	}

	#main .com-personal .photo p {
		font-size: 1.3rem;
	}

	/*------------------------------------------------------------
		com-other
	------------------------------------------------------------*/
	#main .com-other .headLine span {
		font-size: 3rem;
	}

	/*------------------------------------------------------------
		com-img-ul
	------------------------------------------------------------*/
	#main .com-img-ul li h3 {
		font-size: 1.6rem;
	}

	#main .com-img-ul li h3 span {
		font-size: 1.3rem;
	}

	/*------------------------------------------------------------
		com-btn
	------------------------------------------------------------*/
	#main .com-btn {
		font-size: 1.3rem;
	}

	/*------------------------------------------------------------
		com-form
	------------------------------------------------------------*/
	#main .com-form {
		margin-bottom: 148px;
	}

	#main .com-form .lBox h2 .tel {
		font-size: 4rem;
	}

	#main .com-form .lBox h2 .txt span {
		font-size: 1.2rem;
	}

	#main .com-form .lBox p {
		font-size: 1.4rem;
	}

	#main .com-form .mail-form table th h3 {
		font-size: 1.3rem;
	}

	#main .com-form .mail-form table th .must {
		font-size: 1.2rem;
	}

	#main .com-form .mail-form table input[type="text"],
	#main .com-form .mail-form table input[type="mail"],
	#main .com-form .mail-form table input[type="tel"],
	#main .com-form .mail-form table textarea {
		font-size: 1.3rem;
	}

	#main .com-form .mail-form table .txt-ul li.txt {
		font-size: 1.2rem;
	}

	/*------------------------------------------------------------
		com-img-box
	------------------------------------------------------------*/
	#main .com-img-box h2 {
		font-size: 1.8rem;
	}

	#main .com-img-box h2 span {
		font-size: 3.5rem;
	}

	#main .com-img-box h3 {
		font-size: 1.3rem;
	}

	#main .com-img-box h3 span {
		font-size: 2.2rem;
	}

	/*------------------------------------------------------------
		com-ttl
	------------------------------------------------------------*/
	#main .com-ttl h2 span {
		font-size: 4rem;
	}

	/*------------------------------------------------------------
		com-list
	------------------------------------------------------------*/
	#main .com-list p.time {
		font-size: 1.6rem;
	}

	/*------------------------------------------------------------
		com-page-navi
	------------------------------------------------------------*/
	#main .com-page-navi li {
		font-size: 2rem;
	}

	/*------------------------------------------------------------
		com-photo-list
	------------------------------------------------------------*/
	#main .com-photo-list .text-link a {
		font-size: 1.6rem;
	}

	#main .com-photo-list .icon-link a {
		font-size: 1.6rem;
	}

	/*------------------------------------------------------------
		com-table
	------------------------------------------------------------*/
	#main .com-table th,
	#main .com-table td {
		font-size: 1.4rem;
	}

	#main .com-table h3 {
		font-size: 1.4rem;
	}

	/*------------------------------------------------------------
		com-year
	------------------------------------------------------------*/
	#main .com-year h3 .year {
		font-size: 3rem;
	}

	#main .com-year h3 .text {
		font-size: 1.6rem;
	}

	/*------------------------------------------------------------
		com-ul
	------------------------------------------------------------*/
	#main .com-ul h3 {
		font-size: 1.2rem;
	}

	#main .com-ul h3 span {
		font-size: 1.7rem;
	}

	#main .com-ul .btn-link a {
		font-size: 1.3rem;
	}

	/*------------------------------------------------------------
		com-email
	------------------------------------------------------------*/
	.com-email h2 {
		font-size: 2.6rem;
	}

	.com-email .mail-list input[type="email"] {
		font-size: 1.3rem;
	}

	/*------------------------------------------------------------
		leadership-list
	------------------------------------------------------------*/
	#main .leadership-list li h3 {
		font-weight: 1.3rem;
	}

	#main .leadership-list li dl {
		font-size: 1.3rem;
	}

	/*------------------------------------------------------------
		com-detail
	------------------------------------------------------------*/
	.com-detail h2 {
		font-size: 2.5rem;
	}

	.com-detail h3 {
		font-size: 2rem;
	}

	.com-detail p {
		font-size: 1.6rem;
	}

	.com-detail ol li {
		font-size: 1.4rem;
	}

	.com-detail table th,
	.com-detail table td {
		font-size: 1.4rem;
	}

	.com-detail table th {
		font-size: 1.5rem;
	}

	/*------------------------------------------------------------
		com-pop
	------------------------------------------------------------*/
	.com-pop h2 {
		font-size: 1.7rem;
	}

	.com-pop .text-box p {
		font-size: 1.5rem;
	}

	.com-pop .text-box table th,
	.com-pop .text-box table td {
		font-size: 1.4rem;
	}

	/*------------------------------------------------------------
		フッター
	------------------------------------------------------------*/
	.footer-read h3 {
		font-size: 3rem;
	}

	/*------------------------------------------------------------
		index
	------------------------------------------------------------*/
	#main .index .top-ttl {
		padding: 130px 24px 200px;
		font-size: 4rem;
		letter-spacing: 0.5px;
		font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	}
	#main .index .top-ttl br {}
	#main .index .top-ttl span.en01 {
		font-family: 'Arsenal', sans-serif;
		font-size: 4.4rem;
		display: block;
	}
	#main .index .top-ttl span.ja01 {
		font-size: 2rem;
		display: block;
	}

	#main .index .sec01 .white-box {
		width: 45%;
	}

	#main .index .sec01 .white-box h2 {
		margin-bottom: 35px;
		font-size: 4rem;
	}

	#main .index .sec01 .white-box p {
		margin-bottom: 30px;
		font-size: 1.5rem;
	}

	#main .index .top-link a {
		font-size: 1.6rem;
	}

	#main .index .sec02 .inner .txt-box h2 {
		margin-right: 6%;
		font-size: 3.5rem;
	}

	#main .index .sec02 .inner .txt-box p {
		font-size: 1.3rem;
	}

	#main .index .sec02 .inner .link-box {
		width: 28%;
	}

	#main .index .sec02 .inner .link-box a {
		font-size: 3rem;
	}

}

@media all and (min-width: 1025px) and (max-width: 1500px) {
	#main .index .top-ttl {
		padding: 130px 0px 170px;
	}
	#main .index .top-ttl span.en01 {
		font-family: 'Arsenal', sans-serif;
		font-size: 4.4rem;
		display: block;
	}
	#main .index .top-ttl span.ja01 {
		font-size: 2rem;
		display: block;
	}

	#main .index .sec01 .photo {
		right: 40px;
	}

	.footer-top {
		padding: 110px 45px;
	}

	.footer-inner {
		padding: 60px 45px 66px;
	}

	.com-box {
		padding: 0 90px;
	}
}

@media all and (min-width: 1025px) and (max-width: 1920px) {
	#main .index .sec02 .inner .com-box {
		padding-left: 90px;
	}

	#main .index .sec02 .inner .txt-box .top-link {
		left: 23px;
	}

	#main .com-more .text-box .inner {
		padding: 30px 0;
	}

	#main .index .sec01 .photo {
		width: 32%;
	}

	#main .index .sec01 .white-box {
		left: 90px;
		width: 660px;
		padding: 50px 5% 35px;
	}

	#main .index .sec01 .white-box h2 {
		margin-bottom: 20px;
	}

	.com-email .mail-list input[type="email"] {
		width: 65%;
	}

	.header-link > li > a {
		font-size: 1.25rem;
	}

	#main .com-form .lBox h2 .tel {
		font-size: 3rem;
	}

	.com-email .h2-img img {
		width: 300px;
	}

	#main .index .sec02 {
		padding-top: 46%;
	}

	#main .index .sec02 .inner .com-box {
		padding-top: 17%;
		padding-bottom: 17%;
		min-height: inherit;
	}

	#main .index .sec02 .bg {
		top: 180px;
	}
}


/*------------------------------------------------------------
		追加分
------------------------------------------------------------*/
.com-detail table.table-trade td{
	border-left: 1px solid #D1D1D1;

}

.seminar .gray-box {
	padding: 30px;
	margin: 0 0 15px 0;
	background-color: #F6F6F6;
}

.seminar .gray-box h4 {
	font-size: 1.8rem;
	margin-top: 0;
	margin-bottom: 15px;

}

.seminar-cats span{
	display: block;
	margin-top: 15px;
}

.seminar-txt-none{
	font-size: 2.0rem;
	margin-bottom: 80px;
}

.seminar-ttl{
	font-size: 1.5rem;
	text-align: center;
	margin-bottom: 20px;
}

.seminar-ttl span{
	display: block;
	font-size: 2.0rem;
	margin-bottom: 10px;
}

.seminar-list{
	padding-left: 0;
	margin-bottom: 90px;
}

.seminar-list li{
	margin-bottom: 25px;
}

.seminar-list li time{
	font-family: 'Arsenal', sans-serif;
	font-size: 2.0rem;
    min-width: 132px;
}

.seminar-list li time span {
	display: block;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.0;
}

.seminar-list li dl{
	margin-left: 40px;
	padding-left: 40px;
	border-left: 1px solid #ccc;
}

.seminar-list li dl{
	margin-bottom: 0;
}

.seminar-list li dl dt {
	float: left;
}

.seminar-list li dl dd {
	margin-left: 100px;
}

.seminar-list a{
	display: inline-block;
	padding: 20px 40px;
	border: 1px solid #ccc;
}

.seminar-list a:before,
.btn-seminar span:before{
	content: " ";
  width: 50px;
  border-bottom: 1px solid #ccc;
  display: block;
  position: absolute;
  margin-left: -90px;
  margin-top: 11px;
}

.business-area p{
	line-height: 2.1;
}
.business-area ul{
	margin: 40px 0;
}
.business-area ul li{
	font-size: 1.6rem;
	line-height: 2.1;
	list-style-type: square;
	margin-bottom: 20px;
}
.business-area ul li span{
	display: block;
}
.business-area-pannel{
	padding-left: 0;
}
.business-area-pannel li h3{
	font-size: 1.4rem;
	font-weight: normal;
	margin-bottom: 20px;
}
.business-area-pannel li h3 span{
	display: block;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 10px;
}
.business-area-pannel li .photo{
  overflow: hidden;
}
.business-area-pannel li .photo a img{
	-webkit-transition: 0.3s all;
	-ms-transition: 0.3s all;
	-o-transition: 0.3s all;
	transition: 0.3s all;
}

.tag-time {
	width: 80px;
	display: inline-block;
}

.tag-press {
	font-size: 10px;
	line-height: 10px;
	padding: 5px 10px 5px 10px;
	display: inline-block;
	color: #000 !important;
	border: 1px solid #000;
	margin-left: 15px;
	position: relative;
	top: -1px;
	width: 100px;
  text-align: center;
}

.tag-translation {
	font-size: 10px;
	line-height: 10px;
	padding: 5px 10px 5px 10px;
	display: inline-block;
	color: #000 !important;
	border: 1px solid #000;
	margin-right: 5px;
	position: relative;
	top: -1px;
	width: 50px;
	text-align: center;
}

.media-ttl{
	font-size: 4.5rem;
	margin: 40px 0 25px 0;
	font-family: 'Arsenal', sans-serif;
}
.corp-table-detail dt {
    text-align: left;
    width: 30%;
    float: left;
    padding: 20px 15px;
    border-top: 1px dotted #ccc;
    font-weight: normal;
}
.corp-table-detail dd {
    text-align: left;
    margin-left: 30%;
    padding: 20px 15px;
    border-top: 1px dotted #ccc;
    background: #fff;
}
.corp-table-detail dt.nocategory {
    width: 15%;
}
.corp-table-detail dd.nocategory {
    margin-left: 15%;
}
ul.cri-list-detail {
	border-top: 1px dotted #ccc;
	padding-left: 0;
}
ul.cri-list-detail li {
    border-bottom: 1px dotted #ccc;
	overflow: hidden;
	_zoom: 1;
	display: table;
	width: 100%;
}
ul.cri-list-detail span.photo {
	display: table-cell;
    text-align: left;
    width: 20%;
    padding: 20px 15px;
    font-weight: normal;
}
ul.cri-list-detail span.photo img {
	width: 100%;
	height: auto;
}
ul.cri-list-detail span.date {
	display: table-cell;
    text-align: left;
    margin-left: 30%;
    padding: 20px 15px;
    background: #fff;
}

ul.cri-list-detail span.category {
	width: 115px;
	display: table-cell;

}

ul.cri-list-detail span.category span {
	font-size: 11px;
	line-height: 11px;
	padding: 5px 10px 5px 10px;
	display: inline-block;
	color: #000 !important;
	border: 1px solid #000;
	margin-right: 15px;
	position: relative;
	top: -1px;
	width: 100px;
	box-sizing: border-box;
	text-align: center;
}




ul.cri-list-detail span.title {
	display: table-cell;
    text-align: left;
    margin-left: 40%;
    padding: 20px 15px;
    background: #fff;
	font-size: 1.8rem;
}
ul.cri-list-detail span.title span.small {
	font-size: 1.5rem;
	display: inline-block;
	display: inline-block;
}
.table-media{
	border-bottom: 1px solid #ddd;
}
.table-media th, .table-media td{
	padding: 15px 10px;
}
.table-media th.th01{
	width: 15%;
}
.table-media th.th02{
	width: 12%;
}
.table-media th.th03{
	width: 15%;
}
@media all and (max-width: 1024px) {
	ul.cri-list-detail span.title {
		display: table-cell;
	    text-align: left;
	    margin-left: 40%;
	    padding: 20px 15px;
	    background: #fff;
		font-size: 1.6rem;
		line-height: 1.5em;
	}
	ul.cri-list-detail span.title span.small {
		font-size: 1.3rem;
		line-height: 1.5em;
		margin-bottom: 5px;
		display: inline-block;
	}
	.media-area > div{
		overflow-x: scroll;
	}
	.media-ttl{
		font-size: 3rem;
	}
	.table-media{
		width: 600px;
	}
}

@media all and (max-width: 992px) {
	.business-area-pannel li{
		margin-bottom: 40px;
	}
}


.seminar-table-detail {
    width: 100%;
    overflow: hidden;
    border: 1px solid #ddd;
    border-top: none;
    background: #f7f7f7;
}
.seminar-table-detail dt {
    text-align: left;
    width: 20%;
    float: left;
    padding: 15px 20px;
    border-top: 1px solid #ddd;
    clear: both;
}
.seminar-table-detail dd {
    text-align: left;
    margin-left: 20%;
    padding: 15px 20px;
    border-left: 1px solid #ddd;
    border-top: 1px solid #ddd;
    background: #fff;
    margin-bottom: 0!important;
}
#main .seminar-area .headLine{
	font-size: 2.2rem;
	margin-bottom: 30px;
}

#main .seminar-area .com-more .text-box .inner{
	padding: 59px 40px 64px;
}
.seminar-detail-area h2 span.title-jp-big{
	line-height: 1.6;
	font-size: 2.4rem;
	display: block;
}

.seminar-detail-area h4{
	font-size: 2.8rem;
	margin-top: 30px;
	margin-bottom: 15px;
}

.seminar-detail-area .prof-name-en{
	font-size: 1.6rem;
	font-weight: normal;
	display: inline-block;
	margin-left: 10px;
}

.business-detail-area .title-jp-big{
	display: block;
	font-size: 2.0rem;
	font-weight: bold;
}

.business-detail-area .title-en{
	font-size: 1.6rem;
	font-weight: normal;
}
.com-detail .table-theme td{
	padding: 10px 20px;
	border-left: 1px solid #D1D1D1;
	width: auto;
}
.txt-link{
	padding-bottom: 4px;
  color: #999!important;
  border-bottom: 1px solid rgba(152,152,152,1);
}


@media all and (max-width: 1024px) {
	.com-detail .table-theme td{
		padding: 10px 20px;
		width: 100%;
		border: 1px solid #D1D1D1;
		border-bottom: none;
	}
	.com-detail table{
		border-bottom: 1px solid #D1D1D1;
	}
}

.modal-area .modal-area-jp, .modal-area .modal-area-en{
  margin-bottom: 10px;
}
.modal-area .modal-area-en{
	display: none;
}
.modal-area + a + a{
  display: none!important;
}
.com-box.seminar-area{
	padding: 0;
}
.btn-seminar a{
	margin-left: 60px;
	min-width: 180px;
    text-align: center;
}
.btn-seminar a:hover{
	color: #fff;
	background: #000;
}

.btn-seminar span{
	margin-left: 60px;
	min-width: 180px;
  text-align: center;
	display: inline-block;
	padding: 20px 40px;
	border: 1px solid #ccc;
}

.li-default{
	padding-left: 25px;
}

.li-default li{
	list-style-type: disc;
}

.medical-fig-area{
	border: 1px solid #ccc;
	padding: 2%;
	margin-bottom: 30px;
}

.com-interview-box{
	border: 1px solid #ccc;
	margin-bottom: 30px;
}

.com-interview-box:hover{
	border: 1px solid #000;
}

.com-interview-box .com-interview-txt {
	padding: 23px 20px;
}

.com-interview-box .com-interview-txt h3{
	margin-top: 0;
	margin-bottom: 15px;
}

.com-interview-box .com-interview-txt p{
	line-height: 1.6;
}

.com-interview-box .com-interview-txt p span{
	font-size: 2.8rem;
	margin-right: 5px;
	color: #000;
	line-height: 2.2;
}

.medical-detail{
	padding-bottom: 4px;
    color: #999;
    border-bottom: 1px solid rgba(152,152,152,1);
}

.medical-detail:hover {
    color: #333;
}

.com-detail .com-tel{
	font-size: 3rem;
	font-weight: bold;
	font-family: 'Arsenal', sans-serif;
}

.com-interview-prof{
	padding-bottom: 40px;
	border-bottom: 1px solid #ccc;
}

.medical-summary{
	line-height: 1.8;
}

.com-seminar-index {
	border-left: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
.com-seminar-index li{
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

#main .com-img-ul li .photo {
	display: none;
}

#main .com-seminar-index.com-img-ul li{
	margin: 0;
}

#main .com-seminar-index.com-img-ul li a{
	padding: 15px 0 10px 0;
}

@media all and (max-width: 1024px) {
	.corp-table-detail dt,
	.corp-table-detail dd{
		display: block;
		float: none;
		width: 100%;
	}
	ul.cri-list-detail li{
		display: block;
		float: none;
		width: 100%;
	}
	ul.cri-list-detail span.photo{
		display: block;
		float: none;
		width: 100%;
		margin: auto;
		text-align: center;
	}
	ul.cri-list-detail span.date{
		display: block;
		width: 100%;
		margin: auto;
		padding-top: 0;
		padding-bottom: 0;
		margin-left: 0;
	}
	ul.cri-list-detail span.photo img {
		width: 45%;
	}
	ul.cri-list-detail span.title{
		display: block;
		padding-top: 5px;
		margin-left: 0;
		width: 100%;
	}
	.corp-table-detail dt, .corp-table-detail dt.nocategory {
		padding-bottom:0;
		width: 100%;
	}
	.corp-table-detail dd, .corp-table-detail dd.nocategory {
		border-top: none;
		padding-top: 5px;
		margin-left: 0;
	}
	.tag-press{
		display: none;
	}
	.seminar-list li{
		margin-bottom: 40px;
	}
	.seminar-list li time span{
		font-size: 2.5rem;
		display: inline-block;
		margin-right: 5px;
	}
	.seminar-list li time{
		font-size: 2.0rem;
		width: 100%;
		margin-bottom: 5px;
	}
	.seminar-list li dl{
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
	}
	.btn-seminar,.btn-seminar a{
		display: block;
		width: 100%;
		text-align: center;
		margin-left: 0;
	}
	.btn-seminar a{
		margin-top: 10px;
		padding: 15px;
	}
	.btn-seminar a:before{
		display: none;
	}
	.bottom-scroll-top{
		display: none!important;
	}
}

.com-img-box h2 + .coach-detail-box{
	margin-top: 60px;
}

.arsenal-title{
  font-family: 'Arsenal', sans-serif;
  font-weight: bold;
  font-size: 3.5rem!important;
  text-transform: capitalize;
}

/*
.brackets:before{
  content:'−';
  margin-right: 30px;
  font-weight: normal;
}
.brackets:after{
  content:'−';
  margin-left: 30px;
  font-weight: normal;
}
*/

.com-detail.faq-area p{
	margin: 20px 0;
}
.com-detail.faq-area ol{
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 20px;
}
.com-detail.faq-area ol > li > ol{
	margin-bottom: 20px;
}
.com-detail.faq-area ol > li > ol > li{
	list-style-type: disc;
}
.com-detail.faq-area ol > li > ol > li > ol > li{
	list-style-type: square;
}
.com-detail.faq-area ul{
	padding-left: 20px;
}
.com-detail.faq-area li{
}
.com-detail.faq-area .faq-area ul li{
	list-style-type: disc;
}
.com-detail.faq-area .faq-area ol li, .com-detail.faq-area .faq-area ul li{
	font-size: 1.6rem;
	line-height: 1.8;
}
.com-detail.faq-area .table-of-contents{
	margin-bottom: 60px;
	background: #f4f4f4;
	padding: 40px 30px;
}
.com-detail.faq-area .table-of-contents li{
	font-size: 1.6rem;
	line-height: 1.8;
}
.com-detail.faq-area .table-of-contents > li > a {
	font-weight: bold;
}
.com-detail.faq-area .table-of-contents h2{
	margin-bottom: 20px;
	margin-top: 30px;
}
.com-detail.faq-area ol li + li{
	margin-top: 0;
	margin: 5px 0;
}
.com-detail.faq-area h2{
	text-align: left;
	margin-bottom: 30px;
	margin-top: 60px;
}
.com-detail.faq-area .faq-area h2{
	border-top: 1px solid #ddd;
	padding-top: 60px;
}
.com-detail.faq-area h2:first-of-type{
	margin-top: 0!important;
}
.com-detail.faq-area .ul-faq > li{
	margin-bottom: 20px;
}
.com-detail.faq-area .faq-area h3 + h4{
	margin-top: 25px;
}
.com-detail.faq-area .faq-area h4{
	font-size: 2rem;
	margin: 48px 0 28px;
	font-weight: 700;
}
.bottom-scroll-top{
	display: block;
	position: fixed;
	right: 10px;
	bottom: 10px;
	width: 70px;
	height: 70px;
	line-height: 70px;
	text-align: center;
	background: #fff;
	border: 1px solid #000;
	font-family: 'Arsenal', sans-serif;
	z-index: 8999;
}
.bottom-scroll-top:hover{
	background: #000;
	color: #fff;
}
.com-detail.faq-area li a {
	padding-bottom: 4px;
	color: #999;
	border-bottom: 1px solid rgba(152,152,152,1);
}
.link{
  padding-bottom: 4px;
  color: #999!important;
  border-bottom: 1px solid rgba(152,152,152,1);
}
.link:hover{
	color:#000!important;
}
.name-kansa{
	font-size: 2.5rem;
}

.name-kansa span{
	margin-top: 5px;
	font-size: 1.8rem;
}

.name-kansa span + span{
	margin-top: 20px;
	font-size: 1.6rem;
}
.press-area p{
	margin-bottom: 2rem!important;
}
.press-area h3{
	margin-top: 4rem;
	margin-bottom: 2rem;
}
.press-area ul{
	padding-left: 20px;
  margin-bottom: 2rem;
}
.press-area li{
	list-style-type: disc;
}
.press-area ol{
	padding-left: 20px;
  margin-bottom: 2rem;
}
.press-area ol li{
	list-style-type: decimal;
}

.press-area ol li strong{
	display: block;
	margin-top: 20px;
}











/* 2021.12 add */
/*------------------------------------------------------------
	common
------------------------------------------------------------*/
.mt-45 {
	margin-top: 45px;
}
.mb-15 {
	margin-bottom: 15px;
}
.mb-30 {
	margin-bottom: 30px;
}

/*------------------------------------------------------------
	リサーチ
------------------------------------------------------------*/
.com-box .cri {
	margin: 0 auto 80px auto;
	max-width: 1480px;
	padding: 0 15px;
}
.com-box .cri .com-ttl h2 {
	text-align: left;
}
.com-box .cri .com-ttl h2 span {
font-weight: normal;

}
.cri-report-area h2 {
	font-size: 3rem;
	line-height: 1.8;
}
.cri-report-area p {
	margin-bottom: 1em !important;
	line-height: 2em;

}
.publicationArticle {
	margin-bottom: 60px;
}

.publicationArticle h3 {
    margin-bottom: 1em;
	font-size: 2rem;
	padding: 21px 0 21px 21px;
    position: relative;
    border-left: 1px solid #BFBFBF;
	font-weight: bold;
}

.publicationArticle-box {
	padding: 30px;
	border: 1px solid #BFBFBF;
	box-sizing: border-box;
}
.publicationArticle-box h3 {
    margin-bottom: 15px;
	font-size: 1.8rem;
	padding: 0;
    border-left:none;
	font-weight: bold;

}
.publicationArticle-box p {
	margin-bottom: 0;
}


.reportArticle {
	margin-bottom: 60px;
}
.reportArticle .report-box {
    margin-bottom: 15px;
    background: #F4F4F4;
    padding-bottom: 15px;
}
.report-box h4 {
    background: #666;
    color: #FFF;
    padding: 8px 8px 7px 7px;
    font-weight: bold;
    font-size: 1.6rem;
    border-bottom: none;
    text-align: center;
    line-height: 1.6em;
    margin-bottom: 15px;
}
.report-box p {
	font-size: 1.4rem;
    line-height: 1.6em !important;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 1em;
}

.reportArticle p.small-note {
	font-size: 1.2rem;
}

.reportArticle figure p {
	font-size: 1.3rem;
}

.reportArticle h3 {
    margin-bottom: 1em;
	font-size: 2rem;
	padding: 21px 0 21px 21px;
    position: relative;
    border-left: 1px solid #BFBFBF;
	font-weight: bold;
}

.reportArticle .figure2020 {
	margin-top: 45px;
	margin-bottom: 45px;
}


.coach-time {
	background: #f4f3f1;
	padding: 45px 30px;
	margin-top: 60px;
	box-sizing: border-box;
}

.coach-time h3{
	font-weight: bold;
	padding: 0;
	border: none;
	text-align:center;
	border-bottom:none;
	letter-spacing: 0.1em;
	font-size: 1.5rem;
	color: #000;
	margin-bottom: 30px;

}

.coach-time h3 span {
	color: #036EB8;
}

.reportArticle figure {
	margin-top: 45px;
	margin-bottom: 45px;
}
span.v-super {
    vertical-align: super;
    font-size: 11px;
    font-weight: normal;
}
.reportArticle figure figcaption {
	text-align: left;
	padding-bottom: 0.5rem;
	color: #6c757d;
	text-align: left;
	caption-side: top;
	font-weight: bold;
}
.reportArticle .blue {
	color: #036eb8;
}
.reportArticle .table01 {
	border-collapse: collapse;
	width: 100%;
	border-bottom: 1px solid #333;
	margin-left: auto;
	margin-right: auto;
}
.reportArticle .table01 caption {
	text-align: left;
	padding-bottom: 0.5rem;
	color: #6c757d;
	text-align: left;
	caption-side: top;
	font-weight: bold;
}
.reportArticle .table01 thead th {
	font-weight: normal;
	border-bottom: 1px solid #333;
	padding: 4px 8px;
	text-align: center;
	vertical-align: middle;
}
.reportArticle .table01 tbody tr:nth-child(odd) {
	background: #F4F4F4;
}
.reportArticle .table01 tbody th {
	text-align: left;
	font-weight: normal;
	padding: 8px;
}
.reportArticle .table01 tbody td {
	text-align: center;
	font-weight: normal;
	padding: 8px;
}
.reportArticle .table01 tbody td.bg-blue {
color: #004986;
font-weight: bold !important;
background: #e5ecf3;
text-align: center;
}
.reportArticle .table01 tbody td.color-blue {
color: #004986;
font-weight: bold !important;
text-align: center;
}

@media all and (min-width: 767px) {
	.reportArticle  .noPC {
		display: none;
	}
}

/*------------------------------------------------------------
	サービス
------------------------------------------------------------*/
.etc-head{
  font-size: 1.6rem;
  margin: 50px 0 40px 0;
}
.etc-head span{
  font-family: 'Arsenal', sans-serif;
  font-size: 3.2rem;
  display: block;
}


/*------------------------------------------------------------
	コーチ紹介
------------------------------------------------------------*/
#main .com-img-box p{
  line-height: 1.8;
}
.name-kansa span{
  display: block;
  margin-bottom: 10px;
  font-weight: 2.4rem;
  font-family: 'Arsenal', sans-serif;
}
