@charset "utf-8";

/*--Base------------------------------------------------------------*/

html,body {
	width: 100%;
	height: 100%;
}

html {
	height: 100%;
	overflow-y: scroll;
}

/*--Reset-----------------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
}

a {
	text-decoration: none;
}

img {
	border: none;
	vertical-align: middle;
}

ul,ol {
	list-style: none;
}

/*--Text------------------------------------------------------------*/

body {
	font-family: 'Century', 'Times New Roman', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}

/*--Link------------------------------------------------------------*/

a,
a:link {
	color: #46494C;
}

a:visited {
	color: #333333;
}

a:hover,
a:active {
	color: #777777;
}

a:focus {
	outline: none;
}

/*--HTML5-----------------------------------------------------------*/

article,aside,details,footer,header,main,menu,nav,section,summary {
	display: block;
}

/*--sample----------------------------------------------------------*/

/*--layout----------------------------------------------------------*/

#wrapper {
	width: 100%;
}

#header {
	width: 100%;
	height: 1093px;
}

#headersp {
	width: 100%;
}

#header02 {
	width: 100%;
	height: 670px;
	background-image: url(../img/about/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerFuture {
	width: 100%;
	height: 670px;
	background-image: url(../img/future/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerSocial {
	width: 100%;
	height: 670px;
	background-image: url(../img/social/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerService {
	width: 100%;
	height: 670px;
	background-image: url(../img/service/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerWorks {
	width: 100%;
	height: 670px;
	background-image: url(../img/works/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerWorks01 {
	width: 100%;
	height: 670px;
	background-image: url(../img/works/01/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerFlow {
	width: 100%;
	height: 670px;
	background-image: url(../img/flow/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerFaq {
	width: 100%;
	height: 670px;
	background-image: url(../img/faq/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerLink {
	width: 100%;
	height: 670px;
	background-image: url(../img/link/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerPrivacy {
	width: 100%;
	height: 670px;
	background-image: url(../img/privacy/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerTopics {
	width: 100%;
	height: 670px;
	background-image: url(../img/topics/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerContact {
	width: 100%;
	height: 670px;
	background-image: url(../img/contact/main01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

#headerRecruit {
	width: 100%;
	height: 670px;
	background-image: url(../img/recruit/bg01.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	margin-top: 130px;
}

.headerContainer {
	width: 100%;
	height: 190px;
	background-color:rgba(255,251,254,0.8);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

.headerContainer02 {
	width: 100%;
	height: 190px;
	background-color:rgba(255,255,255,1.0);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}
.headerContainer03 {
	width: 100%;
	height: 190px;
	background-color:rgba(255,251,254,1.0);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

#header header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headersp header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#header02 header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headerFuture header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headerService header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headerWorks header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headerWorks01 header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headerFlow header {
	width: 1100px;
	height: 130px;
	margin:0 auto;
}

#headerFaq header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#headerLink header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#headerTopics header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#headerContact header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#headerSocial header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#headerPrivacy header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#headerRecruit header {
	width: 1100px;
	height: 130px;
	margin: 0 auto;
}

#contents {
	margin: 0 auto;
	width: 100%;
	min-height: 500px;
}

#footer {
	margin-top: 38px;
	min-width: 1100px;
	background-color: #46494C;
}

#footer footer {
	margin: 0 auto;
	height: 508px;
}

#header header,
#footer footer {
	width: 1100px;
}

/*--common----------------------------------------------------------*/

#header h1,
#header h2,
#contents h3,
#header p,
#contents p,
#footer p {
	padding: 0px;
}

.infoBox {
	position: fixed;
	right: 30px;
	bottom: 30px;
	text-align: center;
	margin-top: 29px;
	z-index: 9999;
}

.topLogo {
	text-align: center;
	margin-top: 29px;
}

/*image-crossfader*/
.image-crossfader {
  overflow: hidden;
  position: relative;
  height: 100%;
}
.image-crossfader-inner {
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 0;
  transform: scale(1);
  transition:
    opacity 3.5s cubic-bezier(0.455, 0.03, 0.515, 0.955),
    transform 3.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.image-crossfader-inner.is-visible {
  z-index: 1;
  opacity: 1;
  transform: scale(1.06);
}
.image-crossfader-inner:nth-child(1) {
  background-image: url(../img/top/slider/taksado.png);
}
.image-crossfader-inner:nth-child(2) {
  background-image: url(../img/top/slider/02.jpg);
}
.image-crossfader-inner:nth-child(3) {
  background-image: url(../img/top/slider/01.jpg);
}
.image-crossfader-inner:nth-child(4) {
  background-image: url(../img/top/slider/02.jpg);
}

/*メインメニュー*/
.gnav {
	margin-top: 27px;
}
.gnav02 {
	margin-top: 42px;
}

#menu-wrap {
  width: 100%;
  height: 16px;
  padding: 0;
  box-sizing: content-box;
}
#menu {
  list-style-type: none;
  width: 1090px;
  display: flex;
  justify-content: space-between;
  padding: 0 5px;
}
#menu li {
  margin: 0;
  padding: 0;
  text-align: center;
}
#menu li a {
  display: block;
  width : 100%;
  color: #46484C;
  font-size: 16px;
  font-weight: normal;
  line-height: 1;
  text-decoration: none;
}
#menu li a:hover {
  color: #999;
}
.fixed {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 9999;
  background-color: rgba(255,255,255,0.8); 
}

.newsBox01 {
	float: left;
	margin-top: 180px;
}

.newsBox02 {
	float: right;
	margin-top: 80px;
	position: relative;
	z-index: 999;
}

.newsBoxContainer {
	width: 1129px;
	margin: 0 auto;
}

/* clearfix */
.newsBoxContainer:before,
.newsBoxContainer:after {
    content: "";
    display: table;
}
 
.newsBoxContainer:after {
    clear: both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.newsBoxContainer {
    zoom: 1;
}

#serviceContainer {
	width: 1100px;
	margin: 100px auto 0 auto;
}

#linkContainer {
	width: 1100px;
	margin: 48px auto 0 auto;
}

.topSubTitle {
	text-align: center;
}

.topContentText01 {
	text-align: center;
	margin-top: 22px;
	font-size: 13px;
	line-height: 100%;
	font-weight: normal;
	color: #46494C;
}

.serviceImg01 {
	margin-top: 55px;
}

#aboutContainer {
	width: 1100px;
	margin: 129px auto 0 auto;
}

#worksContainer {
	width: 100%;
	margin: 110px auto 0 auto;
	background-color: #C9CEBD;
}

.topWorksBox01 {
	float: left;
	margin-right: 53px;
	margin-top: 110px;
}

.topWorksBox02 {
	float: left;
	margin-right: 0px;
	margin-top: 110px;
}

.topWorksContainer {
	overflow: hidden;
	width: 1100px;
	margin: 0 auto;
	height: 810px;
}

/* clearfix */
.topWorksContainer:before,
.topWorksContainer:after {
    content: "";
    display: table;
}
 
.topWorksContainer:after {
    clear: both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.topWorksContainer {
    zoom: 1;
}

.topWorksContainer02 {
	width: 100%;
	background-color: #DB7F67;
	padding-top: 123px;
	padding-bottom: 80px;
}

.topContentText02 {
	text-align: center;
	margin-top: 22px;
	font-size: 13px;
	line-height: 100%;
	font-weight: normal;
	color: #ffffff;
}

.topWorksImg01 {
	text-align: center;
	margin-top: 46px;
}

#futureContainer {
	width: 1100px;
	margin: 122px auto 0 auto;
}

#otherContainer {
	width: 1100px;
	margin: 100px auto 0 auto;
}

.otherImg01 {
	text-align: center;
	margin-top: 70px;
}

.topNewsMore {
	text-align: right;
	margin-top: 0px;
	margin-right: 69px;
}




/*footer*/

.footerLogo {
	text-align: center;
	padding-top: 59px;
}

.footerText01 {
	text-align: center;
	margin-top: 25px;
	font-size: 15px;
	line-height: 100%;
	font-weight: normal;
	color: #ffffff;
}

.footerText02 {
	text-align: center;
	margin-top: 48px;
	font-size: 15px;
	line-height: 180%;
	font-weight: normal;
	color: #ffffff;
}

.footerText03 {
	font-size: 26px;
}

.footerText03 a {
	color: #FFF;	
}

.footerText04 {
	text-align: center;
	margin-top: 70px;
	font-size: 14px;
	line-height: 180%;
	font-weight: normal;
	color: #ffffff;
}

.footerText04 a {
	color: #ffffff;
}

.copy {
	text-align: center;
	margin-top: 70px;
	font-size: 14px;
	line-height: 180%;
	font-weight: normal;
	color: #ffffff;
}

/*about*/

.subTitleLine {
	text-align: center;
	margin-top: 36px;
}

.aboutText01 {
	text-align: center;
	margin-top: 43px;
	font-size: 15px;
	line-height: 180%;
	font-weight: normal;
	color: #46494C;
}

.aboutText02 {
	text-align: center;
	margin-top: 43px;
	font-size: 17px;
	line-height: 220%;
	font-weight: normal;
	color: #46494C;
}

.aboutImg01 {
	text-align: center;
	margin-top: 15px;
}

.aboutImg02 {
	text-align: center;
}

.aboutImg03 {
	text-align: center;
	margin-top: 55px;
}

#philosophyBox {
	width: 1155px;
	margin: 70px auto 0 auto;
}

#profileBox {
    width: 100%;
    margin: 70px auto 0 auto;
    background-image: url(../img/about/bg01.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    padding: 95px 0;
}

#outlineBox {
	width: 1100px;
	margin: 90px auto 0 auto;
}

#accessBox {
	width: 1100px;
	margin: 90px auto 0 auto;
}

.accessBox01 {
	float: left;
	width: 550px;
}

.accessBox02 {
	float: left;
	width: 550px;
}

.accessContainer {
	overflow: hidden;
	width: 1100px;
	margin: 52px auto 0 auto;
}

/* clearfix */
.accessContainer:before,
.accessContainer:after {
    content: "";
    display: table;
}
 
.accessContainer:after {
    clear: both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.accessContainer {
    zoom: 1;
}

.aboutBg02 {
	width: 100%;
	margin: 70px auto 0 auto;
	height: 400px;
	background-image: url(../img/about/main02.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
}

.coming {
	text-align: center;
	margin-top: 100px;
	font-size: 26px;
	line-height: 220%;
	font-weight: normal;
	color: #46494C;
}

/*service*/

.serviceText01 {
	text-align: center;
	margin-top: 0px;
	font-size: 16px;
	line-height: 180%;
	font-weight: normal;
	color: #46484C;
}

.serviceText02 {
	text-align: center;
	margin-top: 70px;
	font-size: 22px;
	line-height: 100%;
	font-weight: normal;
	color: #46484C;
	letter-spacing: 0.1em;
	font-weight: bold;
}

#serviceBox {
	width: 1100px;
	margin: 60px auto 0 auto;
}

#serviceLinkBox {
	width: 1100px;
	margin: 100px auto 0 auto;
}

.serviceImg02 {
	margin-top: 0px;
}


/*works*/
.worksImg01 {
	margin-top: 70px;
}

.worksImg02 {
	margin-top: 78px;
}

.worksList01 {
	float: left;
	margin-right: 53px;
}

.worksList02 {
	float: left;
	margin-right: 0px;
}

.worksListContainer {
	overflow: hidden;
	margin-top: 81px;
}

/* clearfix */
.worksListContainer:before,
.worksListContainer:after {
    content: "";
    display: table;
}
 
.worksListContainer:after {
    clear: both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.worksListContainer {
    zoom: 1;
}

.worksListContainer02 {
	overflow: hidden;
	margin-top: 21px;
}

/* clearfix */
.worksListContainer02:before,
.worksListContainer02:after {
    content: "";
    display: table;
}
 
.worksListContainer02:after {
    clear: both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.worksListContainer02 {
    zoom: 1;
}

.worksText01 {
	text-align: center;
	font-size: 30px;
	color: #46464C;
}

/*faq*/

.faqTitle01 {
	text-align: left;
	margin-top: 35px;
	font-size: 24px;
	line-height: 100%;
	font-weight: normal;
	color: #DA7F66;
	letter-spacing: 0.1em;
}

.accordion {
	background-color: #ffffff;
	margin-top: 20px;
}

.accordion_switch_color {
	position: relative;
	cursor: pointer;
	color: #46464C;
	background-color: #ffffff;
	font-size: 17px;
	font-weight: normal;
	letter-spacing: 0.1em;
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	height: 94px;
	line-height: 94px;
}

.accordion_switch_color:before {
	position: absolute;
	display: block;
	content: "";
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	background-color: #46464C;
	margin-top: -8px;
}

.accordion_switch_color:after {
	position: absolute;
	display: block;
	content: "";
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	background-color: #ffffff;
	margin-top: -13px;
}

.accordion_kakunou_color {
	font-size: 15px;
	background-color: #ffffff;
	margin-top: 20px;
	line-height: 180%;
}

.accordion_switch_color.open:before {
	position: absolute;
	display: block;
	content: "";
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	background-color: #46484C;
	margin-top: -4px;
}

.accordion_switch_color.open:after {
	position: absolute;
	display: block;
	content: "";
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	background-color: #fff;
	margin-top: 1px;
}

.faqImg01 {
	margin-left: 20px;
	margin-right: 35px;
}

.aText01 {
	margin-left: 168px;
	margin-top: -33px;
}

.futureText01 {
	margin-top: 52px;
	text-align: center;
	font-size: 22px;
	font-weight: 500;
}

.futureText01-2 {
	margin-top: 200px;
	text-align: center;
	font-size: 22px;
	font-weight: 500;
}

.futureText02 {
	margin-top: 60px;
	text-align: center;
	font-size: 15px;
	line-height: 180%;
}

.futureImg01 {
	margin-top: 36px;
	text-align: center;
}

/*link*/

.linkCate01 {
	margin-top: 36px;
	text-align: center;
	background-color: #C9CEBD;
	height: 55px;
	line-height: 55px;
	font-size: 20px;
	font-weight: bold;
	color: #46474C;
}

.linkCate02 {
	margin-top: 99px;
	text-align: center;
	background-color: #A37B73;
	height: 55px;
	line-height: 55px;
	font-size: 20px;
	font-weight: bold;
	color: #46474C;
}
.linkCate03 {
	margin-top: 99px;
	text-align: center;
	background-color: #DB7F67;
	height: 55px;
	line-height: 55px;
	font-size: 20px;
	font-weight: bold;
	color: #46474C;
}

.linkImg01 {
	margin-top: 35px;
	text-align: center;
}

.linkImg02 {
	margin-top: 20px;
	text-align: center;
}

/*privacy*/

.privacyBox01 {
	text-align: left;
	width: 800px;
	margin: 0 auto;
	color: #46464C;
}

.privacyText01 {
	margin-top: 60px;
	font-size: 20px;
	line-height: 180%;
	font-weight: bold;
}

.privacyText02 {
	margin-top: 40px;
	font-size: 14px;
	line-height: 120%;
}

.privacyText03 {
	margin-top: 30px;
	font-size: 15px;
	line-height: 120%;
	font-weight: bold;
}

.privacyText04 {
	margin-top: 30px;
	font-size: 14px;
	line-height: 110%;
}

/*contact*/

.contactWrap {
	text-align: left;
	width: 900px;
	margin: 0 auto;
	color: #46464C;
}

.contactText01 {
	margin-top: 60px;
	font-size: 15px;
	line-height: 100%;
	text-align: center;
}

.contactText02 {
	margin-top: 60px;
	font-size: 18px;
	line-height: 180%;
	font-weight: bold;
}

.contactTable {
	font-size: 14px;
	margin-top: 60px;
	border-collapse: separate;
	
}

.contactTable th {
	width: 400px;
	text-align: left;
	font-weight: normal;
	color: #FFF;
	background-color: #46474C;
	padding: 10px;
	border-bottom: 1px solid #FFF;
}

.contactTable td {
	padding-left: 60px;
}

.submitBtn {
	text-align: center;
	margin-top: 50px;
	margin-bottom: 50px;
}

/*csr*/

.csrText01 {
	text-align: center;
	line-height: 220%;
	font-size: 16px;
	color: #46464C;
}

.csrImg01 {
	margin-top: 80px;
}

/*recruit*/

.recruitTitle01 {
	height: 55px;
	width: 1100px;
	text-align: center;
	line-height: 55px;
	font-size: 20px;
	color: #46464C;
	margin-top: 80px;
	background-color: #DB7F67;
	font-weight: 600;
}

.recruitTable01 {
	border-collapse: collapse;
	margin-top: 68px;
}

.recruitTable01 td {
	text-align: left;
	font-size: 15px;
	color: #46474C;
	font-weight: normal;
	vertical-align: top;
	padding-top: 10px;
	padding-bottom: 10px;
	line-height: 180%;
	padding-left: 20px;
}

.recruitTable01 tr {
	height: 2px;
	border-bottom: 1px dotted #333333;
	border-top: 1px dotted #333333;
}

.recruitTable01 th {
	width: 274px;
	text-align: center;
	font-size: 15px;
	color: #46474C;
	font-weight: normal;
	vertical-align: top;
	padding-top: 10px;
	padding-bottom: 10px;
	line-height: 180%;
}

.recruitText01 {
	text-align: center;
	font-size: 15px;
	color: #46464C;
	margin: 60px auto 0 auto;
	width: 1000px;
}

.recruitText02 {
	width: 552px;
	border: 1px solid #333333;
	text-align: center;
	font-size: 20px;
	color: #46464C;
	margin: 30px auto;
	line-height: 55px;
	height: 55px;
	font-weight: 600;
}

/*topics*/

#topicsContainer {
	width: 800px;
	margin: 100px auto 0 auto;
}

.topicsMore {
	text-align: right;
	margin-top: 60px;
}

.taksadoBg {
	width: 100%;
	background-color: #486A7A;
	text-align: center;
	padding: 0;
}

.bannerBox01 {
	width: 1000px;
	text-align: center;
	margin: 40px auto 0 auto;
}

.bannerBox01sp {
	width: 1000px;
	text-align: center;
	margin: 40px auto 0 auto;
}

.companyTable02 {
	font-size: 15px;
    text-align: left;
	border-collapse:collapse;
	width: 500px;
	margin: 0 auto;
}

.companyTable02 th {
	font-weight: normal;
	padding: 20px 0;
	width: 35%;
}

.companyTable02 tr {
	border-top: 1px dotted #333333;
	border-bottom: 1px dotted #333333;
}

.companyTable01 {
    font-size: 15px;
    text-align: left;
    border-collapse: collapse;
    margin: 50px auto 0 auto;
    max-width: 1100px;
}

.companyTable01 td {
	font-weight: normal;
	text-align: left;
	padding: 30px;
}

.companyTable01 th {
	font-weight: normal;
	padding: 20px 0;
	width: 200px;
	background-color: #486A7A;
	color: #fff;
	text-align: center;
}

.companyTable01 tr {
	border-top: 1px dotted #333333;
	border-bottom: 1px dotted #333333;
}
