@charset "UTF-8";
/*
  css設定 @charsetが消されるsass仕様へのハック用コメントです。削除しないでください。新規作成時も必須！
 */
/*================================================================
 site_default
================================================================*/
/*================================================================
 common_style
================================================================*/
/*================================================================
 common
================================================================*/
.allWrap img {
  max-width: 100%;
  height: auto;
}

.siteHeader .otherLinks,
.siteFooter .otherLinks {
  margin: 0 auto;
  width: 90%;
  float: none;
  clear: both;
}
.siteHeader .otherLinks li,
.siteFooter .otherLinks li {
  float: none;
  clear: both;
  padding-right: 37px;
  border-top: 1px solid #000;
}
.siteHeader .otherLinks li:last-child,
.siteFooter .otherLinks li:last-child {
  padding-right: 0;
  border-bottom: 1px solid #000;
}
.siteHeader .otherLinks li a,
.siteFooter .otherLinks li a {
  display: block;
  padding: 15px 8px;
}

main {
  padding-bottom: 80px;
  min-width: 0;
}

.commonMoreBtn {
  width: auto !important;
}
.commonMoreBtn a {
  padding: 10px 0 8px;
}

/*================================================================
 siteHeader
================================================================*/
.siteHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid #000;
  background: rgba(255, 255, 255, 0.9);
}
.siteHeader .inner {
  padding: 0 !important;
  width: auto;
  background: none;
}
.siteHeader h1 {
  float: none;
  clear: both;
  padding: 11px 8px 8px;
  width: 130px;
  height: 30px;
  overflow: hidden;
  margin-top: 0;
}
.siteHeader .menuBtn {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  right: 0;
  width: 70px;
  height: 50px;
  border-left: 1px solid #000;
}
.siteHeader .menuBtn span {
  display: inline-block;
  position: absolute;
  left: 50%;
  margin-left: -18px;
  width: 36px;
  height: 3px;
  background: #000;
}
.siteHeader .menuBtn span:first-of-type {
  top: 13px;
}
.siteHeader .menuBtn span:nth-of-type(2) {
  top: 24px;
}
.siteHeader .menuBtn span:last-of-type {
  top: 35px;
}
.siteHeader .menuBtn.open span:first-of-type {
  top: 24px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}
.siteHeader .menuBtn.open span:nth-of-type(2) {
  display: none;
}
.siteHeader .menuBtn.open span:last-of-type {
  top: 24px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.siteHeader .linkArea {
  display: none;
  box-sizing: border-box;
  position: absolute;
  top: 50px;
  left: 0;
  padding: 30px 5%;
  width: 100%;
  float: none;
  clear: both;
  background: #fff;
}
.siteHeader .linkArea .otherLinks {
  display: none;
}
.siteHeader .linkArea .lowerLinks {
  float: none;
  clear: both;
}
.siteHeader .linkArea .lowerLinks > li {
  float: none;
  clear: both;
  margin-right: 0;
  border-top: 1px solid #000;
}
.siteHeader .linkArea .lowerLinks > li.current > a:after {
  display: none;
}
.siteHeader .linkArea .lowerLinks > li a {
  display: block;
  padding: 15px 0;
}
.siteHeader .linkArea .lowerLinks > li a.arrowOn:before {
  content: '>';
  position: absolute;
  display: block;
  top: 50%;
  right: 5px;
  margin-top: -7px;
  line-height: 1;
  font-size: 15px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  transform: rotate(90deg);
}
.siteHeader .linkArea .lowerLinks > li a.arrowOn.open:before {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  transform: rotate(-90deg);
  right: 7px;
}
.siteHeader .linkArea .lowerLinks .dropDown {
  position: static;
  padding-top: 0;
  width: auto !important;
}
.siteHeader .linkArea .lowerLinks .dropDown li {
  border: none;
}
.siteHeader .linkArea .lowerLinks .dropDown li a {
  display: block;
  box-sizing: border-box;
  position: relative;
  padding: 8px 20px 8px 24px;
  background: #fff;
}
.siteHeader .linkArea .lowerLinks .dropDown li a:before {
  content: '';
  display: block;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 0;
  width: 8px;
  height: 1px;
  border-left: 1px solid #f4f4f4;
  background: #6b6b6b;
}
.siteHeader .linkArea .snsLinks {
  float: none;
  clear: both;
  width: auto;
  border-top: 1px solid #000;
}
.siteHeader .linkArea .snsLinks li {
  padding-right: 0;
  width: 50%;
  text-align: center;
}
.siteHeader .linkArea .snsLinks li a {
  display: block;
  padding: 10px;
}

/*================================================================
 siteFooter
================================================================*/
.siteFooter {
  padding-bottom: 15px;
}
.siteFooter .pageTop {
  bottom: 1%;
  width: 34px;
}
.siteFooter .copyright {
  float: none;
  clear: both;
  padding-top: 20px;
  text-align: center;
  line-height: 1.3;
}

/*================================================================
 top_style
================================================================*/
#top .siteHeader {
  top: 400px;
}
#top .mv {
  margin-bottom: 100px;
  height: auto;
}
#top .sections {
  margin-bottom: 40px;
}
#top .sections.about {
  position: relative;
  padding: 40px 3%;
  width: auto;
  text-align: center;
  background-position-y: -40px !important;
  background-size: 300px auto;
}
#top .sections.about:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  z-index: 1;
}
#top .sections.about h2,
#top .sections.about p,
#top .sections.about div {
  position: relative;
  z-index: 2;
}
#top .sections.about h2 {
  padding-bottom: 30px;
  font-size: 30px;
}
#top .sections.about .lead {
  max-width: none;
  padding-bottom: 30px;
  font-size: 12px;
}
#top .sections.about .commonMoreBtn {
  margin-left: 0;
}
#top .sections.lowers {
  margin-bottom: 0;
}
#top .sections.lowers .lowerBtns li {
  margin: 0 0 20px;
  clear: both;
  width: 48%;
}
#top .sections.lowers .lowerBtns li:nth-child(2n) {
  float: right;
  clear: none;
}
#top .sections.lowers .lowerBtns li:last-child .logo {
  top: 50%;
  margin-top: 0 !important;
  width: auto;
}
#top .sections.lowers .lowerBtns li a {
  padding: 10px 5%;
}
#top .sections.lowers .lowerBtns li .en {
  font-size: 10px;
}
#top .sections.lowers .lowerBtns li .ja {
  font-size: 14px;
}
#top .sections.lowers .lowerBtns li .bg {
  background-position-y: center !important;
  background-size: cover;
}
#top .sections.movie {
  float: left;
  width: 48%;
  margin-bottom: 20px;
}
#top .sections.movie h2 {
  margin-top: -25px;
  font-size: 15px;
}
#top .sections.movie h2 .subTitle {
  margin-top: 15px;
  padding-top: 10px;
  font-size: 12px;
}
#top .sections.movie .bg {
  background-image: url('../img/sp/top/movie_bg.jpg');
  background-position-y: center !important;
}
#top .sections.making {
  margin-bottom: 20px;
  width: 48%;
}
#top .sections.making h2 {
  margin-top: -22px;
  font-size: 15px;
}
#top .sections.making .bg {
  background-size: contain;
  background-color: #d8ebf4;
  background-position-y: center !important;
}
#top .sections.interview {
  float: none;
  clear: both;
  margin-bottom: 20px;
  width: auto;
}
#top .sections.interview h2 {
  position: absolute;
  top: 50%;
  left: 5%;
  margin-top: -40px;
  padding: 0;
  width: auto;
  font-size: 15px;
  background: none;
}
#top .sections.interview h2 .subTitle {
  margin-top: 15px;
  padding-top: 10px;
  font-size: 12px;
}
#top .sections.interview .bg {
  position: relative;
  height: 100%;
  background-image: url('../img/sp/top/interview_bg.jpg');
  background-size: cover;
  background-position-x: right;
  background-position-y: center !important;
}
#top .sections.news {
  position: static;
  margin: 0;
  padding: 20px 3% 30px;
  width: auto;
}
#top .sections.news h2 {
  margin-bottom: 25px;
  padding-bottom: 10px;
  border-bottom: 1px solid #858585;
  font-size: 16px;
}
#top .sections.news .newsList {
  font-size: 14px;
}
#top .sections.news .newsList li {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 20px;
}
#top .sections.news .newsList li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}
#top .sections.news .newsList li:last-child:after {
  display: none;
}
#top .sections.news .newsList li:after {
  content: '';
  box-sizing: border-box;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 8px;
  height: 1px;
  border-right: 1px solid #f4f4f4;
  background: #737171;
}
#top .sections.news .newsList li div {
  line-height: 1.7;
}
#top .sections.news .newsList li .content {
  max-height: 46px;
  overflow-y: hidden;
}
#top .sections.news .commonMoreBtn {
  margin-top: 21px;
}

/*================================================================
 lower_style
================================================================*/
.lower .pageTitle {
  position: static;
  padding-bottom: 20px;
  text-align: center;
}
.lower .pageTitle img {
  position: static;
  width: auto;
  height: 80px;
}
.lower .intro {
  margin-bottom: 80px;
}
.lower .intro:before {
  display: none;
}
.lower .intro .lead {
  float: none;
  clear: both;
  padding-right: 0 !important;
  max-width: none;
  line-height: 1.7;
  font-size: 13px;
}
.lower .intro .lead br {
  display: none;
}
.lower .sectionTitle01 {
  padding-bottom: 40px;
  font-size: 14px;
}
.lower .movieModalArea .inner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 3%;
  margin: auto;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.lower .movieModalArea iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.lower .movieModalArea .closeBtn {
  top: auto;
  right: 3%;
  bottom: 10%;
  margin: 0;
  width: 30px;
}
.lower .movieModalArea .image img {
  position: absolute;
  top: 0;
  right: auto;
  bottom: 0;
  left: 3%;
  margin: auto;
  width: 94%;
}
.lower .imageModalArea .closeBtn {
  top: auto;
  right: 3%;
  bottom: 10%;
  margin: 0;
}
.lower .imageModalArea .image img {
  position: absolute;
  top: 0;
  right: auto;
  bottom: 0;
  left: 3%;
  margin: auto;
  width: 94%;
}
.lower #slide01 {
  height: 290px;
}
.lower #slide01 .slideFrame {
  width: 240px;
}
.lower #slide01 .slider li {
  padding-right: 20px;
  width: 240px;
}
.lower #slide01 .slider li .image {
  padding-bottom: 20px;
  width: 240px;
}
.lower #slide01 .slider li dt {
  padding-bottom: 10px;
  font-size: 12px;
}
.lower #slide01 .slider li dd {
  line-height: 1.7;
  font-size: 10px;
}
.lower #slide01 .controller {
  top: 80px;
  margin: -15px 0 0 -150px;
  width: 300px;
}
.lower #slide01 .controller li {
  width: 30px;
}
.lower #slide01 .controller li a {
  display: block;
}
.lower #slide01 .covers li {
  width: 19.54%;
  height: 160px;
}

/*================================================================
 about
================================================================*/
#about .intro {
  margin-bottom: 60px;
}
#about .intro .pageTitle img {
  max-height: 60px;
}
#about .mainVisual {
  margin-bottom: 20px;
  height: 200px;
}
#about .sections .readBtn {
  padding: 10px 3%;
}
#about .sections.interview {
  margin: -270px auto 30px;
  padding: 270px 0 70px;
}
#about .sections.interview .sectionTitle01 {
  padding-bottom: 60px;
}
#about .sections.interview > .catch {
  padding-bottom: 25px;
  font-size: 18px;
}
#about .sections.interview > .lead {
  padding-bottom: 70px;
  line-height: 1.7;
  font-size: 13px;
}
#about .sections.interview .bgArea {
  margin-bottom: 20px;
  height: auto;
}
#about .sections.interview .bgArea .textArea {
  position: static;
  padding: 0 0 10px;
  width: auto;
}
#about .sections.interview .bgArea .textArea br {
  display: none;
}
#about .sections.interview .bgArea .info,
#about .sections.interview .bgArea .name {
  position: static;
}
#about .sections.interview .bgArea .catch {
  padding-bottom: 15px;
  font-size: 18px;
}
#about .sections.interview .bgArea .info {
  padding-bottom: 10px;
  line-height: 1.7;
}
#about .sections.interview .bgArea .name {
  bottom: 20px;
  font-size: 16px;
}
#about .sections.interview .bgArea .name .en {
  padding-left: 10px;
  font-size: 12px;
}
#about .sections.interview .bgArea .bg {
  height: 150px;
  background-position-x: right;
}
#about .sections.interview .content {
  padding: 30px 0 60px;
}
#about .sections.interview .content .paragraph {
  padding: 0 5% 50px;
}
#about .sections.interview .content .paragraph dl {
  float: none !important;
  clear: both;
  width: auto;
}
#about .sections.interview .content .paragraph dt {
  padding-bottom: 20px;
  line-height: 1.7;
  font-size: 15px;
}
#about .sections.interview .content .paragraph dd {
  line-height: 1.7;
  font-size: 13px;
}
#about .sections.interview .content .paragraph .imageList {
  float: none !important;
  clear: both;
  padding-bottom: 30px;
  width: auto;
  text-align: center !important;
}
#about .sections.interview .content .paragraph .imageList li {
  padding-bottom: 10px;
}
#about .sections.interview .content .closeBtn {
  width: 30px;
}
#about .sections.interview .cont01 {
  padding-bottom: 50px;
}
#about .sections.interview .cont02 .bgArea .bg {
  background-position-x: left;
}
#about .sections.making {
  padding: 220px 0 80px;
}
#about .sections.making:before {
  height: 200px;
}
#about .sections.making > header {
  padding-bottom: 30px;
}
#about .sections.making > header h3 {
  padding-bottom: 60px;
}
#about .sections.making > header .catch {
  padding-bottom: 20px;
  font-size: 18px;
}
#about .sections.making > header .lead {
  line-height: 1.7;
  font-size: 14px;
}
#about .sections.making .flows {
  padding-bottom: 50px;
}
#about .sections.making .flows > header {
  float: none !important;
  clear: both;
  margin-bottom: 30px;
  padding: 40px 3%;
  width: auto;
  height: auto;
}
#about .sections.making .flows > header h4 {
  margin-bottom: 20px;
  padding: 50px 0 30px;
  font-size: 18px;
}
#about .sections.making .flows > header h4:before {
  margin-left: -20px;
  padding: 11px 0;
  width: 40px;
  border-radius: 20px;
}
#about .sections.making .flows > header h4:after {
  height: 16px;
}
#about .sections.making .flows > header .text {
  line-height: 1.7;
  font-size: 14px;
}
#about .sections.making .flows .image {
  float: none !important;
  clear: both;
  width: auto;
}
#about .sections.making .flows .image img {
  width: 100%;
}
#about .sections.making .flows .images {
  float: none !important;
  clear: both;
  width: auto;
}
#about .sections.making .flows .images li:first-child {
  padding-bottom: 15px;
}
#about .sections.making .flows .images li img {
  width: 100%;
}
#about .sections.making .flows:nth-of-type(2) > header {
  float: left;
}
#about .sections.making .flows:nth-of-type(2) .images {
  float: right;
}
#about .sections.making .endCont > header {
  padding-bottom: 20px;
}
#about .sections.making .endCont > header h5 {
  padding-bottom: 20px;
  font-size: 18px;
}
#about .sections.making .endCont > header .lead {
  line-height: 1.7;
  font-size: 14px;
}
#about .sections.making .closeBtn {
  right: 3%;
  left: auto;
  bottom: 0;
  margin-left: 0;
  width: 30px;
}
#about .movieThumb {
  margin: 0 auto 15px;
  height: 200px;
}
#about .movieThumb a:before {
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  background-size: 100% auto;
}
#about .movieCap {
  line-height: 1.7;
  font-size: 14px;
}

/*================================================================
 concept
================================================================*/
#concept.conceptTop .intro img {
  width: auto;
  height: 30px;
}
#concept.conceptTop main .lowerLinks {
  max-width: none;
}
#concept.conceptTop main .lowerLinks li {
  float: none;
  clear: both;
  margin: 0 auto;
  padding: 0 0 30px;
}

/*================================================================
 concept detail
================================================================*/
#concept.detail main {
  padding-bottom: 50px;
}
#concept.detail .intro,
#concept.detail .sections {
  padding: 50px 0 !important;
  min-height: 0;
}
#concept.detail .pageTop {
  right: 10px;
  bottom: 10px;
  width: 30px;
}
#concept.detail .intro {
  margin-bottom: 0;
}
#concept.detail .intro h2 {
  margin-bottom: 30px;
}
#concept.detail .intro .catch {
  float: none;
  clear: both;
  margin: 0 auto !important;
  width: 300px;
}
#concept.detail .intro > dl {
  float: none;
  clear: both;
  padding-top: 30px;
  width: auto;
}
#concept.detail .intro > dl dt {
  padding-bottom: 25px;
  font-size: 18px;
}
#concept.detail .intro > dl dd {
  line-height: 2;
  font-size: 14px;
}
#concept.detail .sections:last-of-type {
  padding-bottom: 100px !important;
}
#concept.detail .sections > header {
  position: relative;
  top: auto;
  left: auto;
  margin: 0 0 50px !important;
  padding: 30px 5%;
  max-width: none;
  opacity: 1 !important;
}
#concept.detail .sections > header h3 {
  margin-bottom: 15px;
  padding-bottom: 10px;
  font-size: 22px;
}
#concept.detail .sections > header .lead {
  line-height: 1.7;
  font-size: 12px;
}
#concept.detail .sections > header .lead .annotation {
  line-height: 1.5;
  font-size: 10px;
}
#concept.detail .sections .modelImage {
  padding-bottom: 30px;
  text-align: center;
}
#concept.detail .sections .textArea {
  padding: 0 0 30px;
  float: none;
  clear: both;
  width: auto;
}
#concept.detail .sections .textArea h4 {
  margin-bottom: 25px;
  padding: 5px 18px 4px;
  font-size: 15px;
}
#concept.detail .sections .modelImage {
  display: block;
  position: static !important;
}
#concept.detail .sections dt {
  padding-bottom: 15px;
  font-size: 15px;
}
#concept.detail .sections dd {
  font-size: 12px;
}
#concept.detail .sections dd .annotation {
  font-size: 10px;
}
#concept.detail .sections .nums {
  padding-bottom: 30px;
}
#concept.detail .sections .nums .numText dt {
  padding-left: 22px;
}
#concept.detail .sections .nums .numText dt:after {
  top: 2px;
  padding: 2px 0;
  width: 16px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  font-size: 12px;
}
#concept.detail .sections .images {
  padding-top: 10px;
}
#concept.detail .sections .images li {
  padding-bottom: 15px;
}
#concept.detail .sections .modalBtn {
  margin: 0 auto;
}
#concept.detail section.movieSec .movieCap {
  padding-bottom: 15px;
  text-align: center;
  font-size: 15px;
}
#concept.detail section.movieSec .thumb {
  margin: 0 auto 10px;
  max-width: 320px;
  height: 160px;
}
#concept.detail section.movieSec .thumb a:before {
  width: 30px;
  height: 30px;
  margin: -15px 0 0 -15px;
  background-size: 100% 100%;
}
#concept.detail .modelImageArea {
  display: none !important;
}

/*================================================================
 concept detail water
================================================================*/
#concept.detail.water main {
  background: none;
}
#concept.detail.water .intro .catch {
  overflow: hidden;
}
#concept.detail.water .intro .catch img {
  position: relative;
  right: -20px;
}
#concept.detail.water .spBg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('../img/sp/concept/water/bg.jpg') no-repeat center center;
  background-size: cover;
  z-index: -1;
}

/*================================================================
 concept detail electric
================================================================*/
#concept.detail.electric main {
  background: none;
}
#concept.detail.electric .spBg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('../img/concept/electric/bg.png') no-repeat left top #303030;
  background-size: 80% auto;
  z-index: -1;
}
#concept.detail.electric .intro .catchArea {
  background-image: url('../img/concept/electric/icon.png');
  background-size: 250px auto;
  background-position-x: center;
}
#concept.detail.electric .intro .catchArea .en {
  padding: 35px 40px 150px;
}

/*================================================================
 concept detail life
================================================================*/
#concept.detail.life .intro .catchArea {
  padding-bottom: 100px;
  width: auto;
  min-height: 0;
  background-size: 300px auto;
  background-position-x: center;
}
#concept.detail.life .intro .catchArea .en {
  padding: 70px 70px 80px;
}
#concept.detail.life .intro .catchArea .icon {
  top: 40px;
  left: 60px;
  width: 120px;
}

/*================================================================
 design
================================================================*/
#design .pageTitle img {
  height: 150px;
}
#design .intro {
  margin: 0 auto 60px;
}
#design .sectionTabs {
  margin-bottom: 30px;
  padding: 0 0 80px;
}
#design .sectionTabs li {
  float: none;
  clear: both;
  margin: 0 0 10px;
  width: auto;
}
#design .sectionTabs li:last-child {
  margin: 0;
}
#design .sectionTabs li a {
  padding: 8px 3%;
  font-size: 12px;
}
#design .sectionTitle01 {
  padding-bottom: 50px;
}
#design .sections {
  padding-bottom: 80px;
}
#design .sections.philosophy {
  padding: 220px 0 50px;
}
#design .sections.philosophy > header {
  padding-bottom: 40px;
}
#design .sections.philosophy > header .catch {
  padding-bottom: 20px;
  font-size: 18px;
}
#design .sections.philosophy > header .lead {
  padding-bottom: 60px;
  line-height: 1.7;
  font-size: 14px;
}
#design .sections.philosophy > header .images li {
  float: none !important;
  clear: both;
  width: auto;
  text-align: center;
}
#design .sections.philosophy > header .images li:first-child {
  padding-bottom: 15px;
}
#design .sections.philosophy .mainImage {
  height: 200px;
}
#design .sections.philosophy .inSections {
  padding-bottom: 50px;
}
#design .sections.philosophy .inSections > header {
  float: none !important;
  clear: both;
  width: auto !important;
}
#design .sections.philosophy .inSections > header h4 {
  margin-bottom: 20px;
  padding-bottom: 15px;
  font-size: 18px;
}
#design .sections.philosophy .inSections > header .lead {
  line-height: 1.7;
  font-size: 14px;
}
#design .sections.philosophy .inSec01 > header .lead {
  float: none;
  clear: both;
  padding-bottom: 30px;
  width: auto;
}
#design .sections.philosophy .inSec01 > header .image {
  float: none;
  clear: both;
  padding: 0;
  width: auto;
  text-align: center;
}
#design .sections.philosophy .inSec01 .images {
  padding-top: 40px;
}
#design .sections.philosophy .inSec02 > header {
  margin: 0 auto;
  padding-bottom: 60px;
  max-width: 610px;
}
#design .sections.philosophy .inSec02 .image {
  text-align: center;
}
#design .sections.philosophy .inSec03 > header {
  padding-bottom: 50px;
}
#design .sections.philosophy .inSec03 .image {
  float: none;
  clear: both;
  padding-top: 0;
  width: auto;
  text-align: center;
}
#design .sections.philosophy .inSec04 {
  padding-top: 350px;
}
#design .sections.philosophy .inSec04 > header {
  margin: 0 auto;
  max-width: 610px;
}
#design .sections.philosophy .inSec04 .image {
  width: 100%;
  height: 300px;
  background: url('../img/design/philosophy_insec04_img.jpg') no-repeat center center;
  background-size: cover;
}
#design .sections.philosophy .inSec04 .image img {
  display: none;
}
#design .sections.designer {
  max-width: none;
}
#design .sections.designer > header {
  padding-bottom: 60px;
}
#design .sections.designer > header .logo {
  padding-bottom: 30px;
}
#design .sections.designer > header .info {
  max-width: 165px;
}
#design .sections.designer > header .info .company {
  padding-bottom: 15px;
  font-size: 16px;
}
#design .sections.designer > header .info .position {
  padding-bottom: 20px;
  font-size: 12px;
}
#design .sections.designer > header .info .name {
  font-size: 20px;
}
#design .sections.designer .profile {
  float: none;
  clear: both;
  padding-bottom: 30px;
  width: auto;
}
#design .sections.designer .profile h4 {
  margin-bottom: 20px;
}
#design .sections.designer > .image {
  float: none;
  clear: both;
  width: auto;
  text-align: center;
}

/*================================================================
 movie
================================================================*/
#movie h2 {
  padding-bottom: 50px;
}
#movie section.gallery .movieList li {
  padding-bottom: 50px;
}
#movie section.gallery .movieList li .thumb {
  margin-bottom: 25px;
  height: 180px;
}
#movie section.gallery .movieList li .thumb a:before {
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  background-size: 100% auto;
}
#movie section.gallery .movieList li dt {
  padding-bottom: 5px;
  font-size: 20px;
}
#movie section.gallery .movieList li dd {
  line-height: 1.7;
  font-size: 14px;
}
#movie section.gallery .movieList li dd:first-of-type {
  padding-bottom: 10px;
}
#movie section.chapter h3 {
  margin-bottom: 30px;
  font-size: 15px;
}
#movie section.chapter h3 span {
  padding: 0 10px;
}
#movie section.chapter .movieList li {
  float: left;
  clear: both;
  padding-right: 0;
  width: 48.5%;
}
#movie section.chapter .movieList li:nth-child(2n) {
  float: right;
  clear: none;
}
#movie section.chapter .movieList li:nth-child(-n + 2) {
  padding-bottom: 40px;
}
#movie section.chapter .movieList li .thumb {
  margin-bottom: 10px;
  height: 120px;
}
#movie section.chapter .movieList li .thumb a:before {
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  background-size: 100% auto;
}
#movie section.chapter .movieList li .caption {
  line-height: 1.7;
  font-size: 14px;
}

/*================================================================
 tlc
================================================================*/
#tlc .intro .pageTitle img {
  height: 140px;
}
#tlc .serviceList {
  margin-bottom: -40px;
}
#tlc .serviceList li {
  clear: both;
  padding: 0 0 40px 0;
  width: 48.5%;
}
#tlc .serviceList li:nth-child(2n) {
  float: right;
  clear: none;
}
#tlc .serviceList li .image {
  padding-bottom: 15px;
}
#tlc .serviceList li dl {
  padding-bottom: 15px;
}
#tlc .serviceList li dt {
  padding-bottom: 10px;
  font-size: 13px;
}
#tlc .serviceList li dd {
  font-size: 12px;
}
#tlc .serviceList li dd br {
  display: none;
}
#tlc .serviceList li .more a {
  box-sizing: border-box;
  display: block;
  margin: 0 auto;
  padding: 10px 3% 8px;
  width: 90%;
  border: 1px solid #000;
  text-decoration: none;
  line-height: 1.4;
  color: #000;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
}

/*================================================================
 access
================================================================*/
#access section {
  padding-bottom: 70px;
}
#access section .googleMap {
  margin-bottom: 25px;
  height: 400px;
}
#access section .logo {
  padding-bottom: 15px;
}
#access section .address {
  line-height: 1.7;
  font-size: 14px;
}
#access section .lead {
  padding-bottom: 15px;
  font-size: 16px;
}
#access section .requestBtn {
  width: 80%;
}
#access section .requestBtn a {
  padding: 8px 3%;
}
#access section .closeBtn {
  width: 30px;
}

/*# sourceMappingURL=smartphone.css.map */
