html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEI1MzY2NTA1RTY2MTFFNUExRTlDMDdERTNCNDFENkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEI1MzY2NTE1RTY2MTFFNUExRTlDMDdERTNCNDFENkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowQjUzNjY0RTVFNjYxMUU1QTFFOUMwN0RFM0I0MUQ2QiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowQjUzNjY0RjVFNjYxMUU1QTFFOUMwN0RFM0I0MUQ2QiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pj3ggHcAAAAQSURBVHjaYvj//z8DQIABAAj8Av7bok0WAAAAAElFTkSuQmCC');
}
body * {
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
}
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section,
main {
  display: block;
}
sup {
  font-size: 10px;
  vertical-align: super;
}
div {
  line-height: 0;
}
ul li {
  list-style: none;
}
input,
select {
  vertical-align: middle;
}
.hide {
  display: none;
}
body {
  font-family: 'Sawarabi Mincho', serif;
}
img {
  -ms-interpolation-mode: bicubic;
}
a {
  text-decoration: none;
}
@media (min-width: 1001px) {
  a:hover {
    opacity: 0.7;
  }
}
.clearfix:before,
.clearfix:after {
  content: '';
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
iframe {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
}
.gothic {
  font-family: 'Sawarabi Gothic', sans-serif;
}
.bold {
  font-weight: bold;
}
.wrap {
  margin: 0 auto;
  width: 1024px;
}
.pc {
  display: inline-block !important;
}
.sp {
  display: none !important;
}
img.sp {
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  a.tel {
    pointer-events: none;
  }
}
@media (max-width: 768px) {
  sup {
    font-size: 8px;
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  .wrap {
    width: 94%;
  }
}
.siteHeader .otherLinks,
.siteFooter .otherLinks {
  font-size: 12px;
}
.siteHeader .otherLinks li,
.siteFooter .otherLinks li {
  float: left;
  padding-right: 37px;
}
.siteHeader .otherLinks li:last-child,
.siteFooter .otherLinks li:last-child {
  padding-right: 0;
}
.siteHeader .otherLinks li a,
.siteFooter .otherLinks li a {
  position: relative;
  padding-left: 8px;
  color: #808080;
}
@media (min-width: 1025px) {
  .siteHeader .otherLinks li a:hover,
  .siteFooter .otherLinks li a:hover {
    opacity: 0.5;
  }
}
.siteHeader .otherLinks li a:before,
.siteFooter .otherLinks li a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -5px;
  width: 4px;
  height: 10px;
  background: #808080;
}
main {
  padding-bottom: 150px;
  min-width: 1024px;
}
.commonMoreBtn {
  width: 200px;
  text-align: center;
  line-height: 1;
  font-size: 12px;
}
.commonMoreBtn a {
  box-sizing: border-box;
  display: block;
  padding: 14px 0 12px;
  border: 1px solid #000;
  color: #000;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
}
.commonActZoom .bg {
  -webkit-transition: transform 0.5s ease;
  -ms-transition: transform 0.5s ease;
  -moz-transition: transform 0.5s ease;
  transition: transform 0.5s ease;
}
.commonActZoom:hover {
  opacity: 1;
}
@media (min-width: 769px) {
  .commonActZoom:hover .bg {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -moz-transform: scale(1.1);
    transform: scale(1.1);
  }
}
.allWrap.tablet .commonActZoom:hover .bg {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -moz-transform: scale(1);
  transform: scale(1);
}
.colorBl {
  color: #005982 !important;
}
.colorYe {
  color: #fab22e !important;
}
.colorPi {
  color: #d28b89 !important;
}
.siteHeader {
  position: relative;
  z-index: 10;
}
.siteHeader .inner {
  position: relative;
  box-sizing: border-box;
  padding: 16px 0;
  background: #fff;
  z-index: 10;
}
.siteHeader h1 {
  float: left;
  line-height: 0;
  margin-top: 8px;
}
.siteHeader .linkArea {
  float: right;
  width: 615px;
}
@media (min-width: 769px) {
  .siteHeader .linkArea {
    display: block !important;
  }
}
.siteHeader .linkArea .otherLinks {
  margin-bottom: 26px;
  padding: 0 0 5px 370px;
  border-bottom: 1px solid #9f9f9f;
}
.siteHeader .linkArea .lowerLinks {
  float: left;
  font-size: 13px;
}
.siteHeader .linkArea .lowerLinks > li {
  position: relative;
  float: left;
  margin-right: 35px;
}
.siteHeader .linkArea .lowerLinks > li.current > a:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
}
.siteHeader .linkArea .lowerLinks > li:last-child {
  margin-right: 0;
}
.siteHeader .linkArea .lowerLinks > li a {
  display: inline-block;
  position: relative;
  padding: 6px 0 5px;
  color: #000;
}
.siteHeader .linkArea .lowerLinks > li a:hover {
  opacity: 1;
}
@media (min-width: 769px) {
  .siteHeader .linkArea .lowerLinks > li a:hover {
    color: #c9c9c9;
  }
}
.siteHeader .linkArea .lowerLinks > li.about .dropDown {
  width: 190px;
}
.siteHeader .linkArea .lowerLinks > li.concept .dropDown {
  width: 130px;
}
.siteHeader .linkArea .lowerLinks > li.design .dropDown {
  width: 178px;
}
.siteHeader .linkArea .lowerLinks .dropDown {
  display: none;
  position: absolute;
  top: 24px;
  left: 0;
  padding-top: 10px;
}
.siteHeader .linkArea .lowerLinks .dropDown li {
  border-top: 1px solid #e5e5e5;
}
.siteHeader .linkArea .lowerLinks .dropDown li.current > a {
  pointer-events: none;
  background: #d2d2d2;
}
.siteHeader .linkArea .lowerLinks .dropDown li:first-child {
  border: none;
}
.siteHeader .linkArea .lowerLinks .dropDown li a {
  display: block;
  box-sizing: border-box;
  position: relative;
  padding: 12px 20px 12px 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: right;
  width: 55px;
}
.siteHeader .linkArea .snsLinks li {
  float: left;
  padding-right: 10px;
  line-height: 0;
}
.siteHeader .linkArea .snsLinks li:last-child {
  padding-right: 0;
}
.siteFooter {
  padding-bottom: 25px;
}
.siteFooter .pageTop {
  position: fixed;
  right: 1%;
  bottom: 45px;
  z-index: 5;
}
.siteFooter .otherLinks {
  float: left;
  clear: both;
}
.siteFooter .copyright {
  float: right;
  padding-top: 2px;
  font-size: 10px;
  color: #555251;
}
#top {
  background: #e5e5e5;
}
#top main {
  background: #e5e5e5;
}
#top main > .wrap {
  position: relative;
}
#top h1 a {
  pointer-events: none;
}
#top .siteHeader {
  left: 0;
  width: 100%;
}
@media (min-width: 769px) {
  #top .siteHeader {
    position: absolute !important;
    top: 670px !important;
  }
}
#top .siteHeader .inner {
  padding: 16px 25px;
}
#top .siteFooter {
  background: #e5e5e5;
}
#top .mv {
  margin-bottom: 120px;
  height: 720px;
  background: url('../img/top/mv.jpg') no-repeat center center;
  background-size: cover;
  overflow: hidden;
}
#top .mv video {
  position: relative;
  width: 100%;
  min-width: 1350px;
  min-height: 720px;
}
#top .sections {
  margin-bottom: 60px;
}
#top .sections h2 {
  font-weight: normal;
}
@media (min-width: 769px) {
  #top .siteHeader,
  #top .sections,
  #top .sections.lowers .lowerBtns li {
    opacity: 0;
  }
}
#top .sections.about {
  box-sizing: border-box;
  padding: 80px 60px 60px;
  width: 100%;
  background: url('../img/top/about_img.png') no-repeat right -60px #fff;
}
#top .sections.about h2 {
  padding-bottom: 50px;
  font-size: 42px;
}
#top .sections.about .lead {
  padding-bottom: 60px;
  max-width: 500px;
  line-height: 2.6;
  font-size: 14px;
}
#top .sections.lowers .lowerBtns {
  display: flex;
  justify-content: center;
}
#top .sections.lowers .lowerBtns li {
  /* float: left; */
  margin: 0 calc(3.369140625% / 2);
  width: 31.0872392578%;
  text-align: center;
  overflow: hidden;
}
#top .sections.lowers .lowerBtns li:nth-child(2) a {
  color: #fff;
}
#top .sections.lowers .lowerBtns li:nth-child(2) .bg {
  background-image: url('../img/top/lowerbtns_electric.jpg');
}
#top .sections.lowers .lowerBtns li:nth-child(3) .bg {
  background-image: url('../img/top/lowerbtns_family.jpg');
}
#top .sections.lowers .lowerBtns li:last-child {
  /* margin-right: 0; */
}
#top .sections.lowers .lowerBtns li .bk_last-child {
  margin-right: 0;
  text-align: left;
}
#top .sections.lowers .lowerBtns li .bk_last-child a {
  color: #000;
  background: #fff;
}
#top .sections.lowers .lowerBtns li .bk_last-child a:hover {
  opacity: 1;
}
@media (min-width: 1025px) {
  #top .sections.lowers .lowerBtns li .bk_last-child a:hover .logo {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -moz-transform: scale(1.1);
    transform: scale(1.1);
  }
}
#top .sections.lowers .lowerBtns li .bk_last-child .ja {
  position: relative;
  bottom: auto;
  left: auto;
}
#top .sections.lowers .lowerBtns li .bk_last-child .logo {
  position: absolute;
  top: 55%;
  right: 8.6956521739%;
  width: 53.0434782609%;
  -webkit-transition: transform 0.5s ease;
  -ms-transition: transform 0.5s ease;
  -moz-transition: transform 0.5s ease;
  transition: transform 0.5s ease;
}
#top .sections.lowers .lowerBtns li a {
  display: block;
  box-sizing: border-box;
  position: relative;
  padding: 10px 20px;
  height: 200px;
  color: #1a2d34;
}
#top .sections.lowers .lowerBtns li p {
  position: relative;
  z-index: 2;
}
#top .sections.lowers .lowerBtns li .en {
  font-size: 12px;
  font-weight: bold;
}
#top .sections.lowers .lowerBtns li .ja {
  position: absolute;
  bottom: 5%;
  left: 0;
  width: 100%;
  line-height: 1.5;
  font-size: 18px;
}
#top .sections.lowers .lowerBtns li .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('../img/top/lowerbtns_water.jpg') no-repeat center -40px;
  z-index: 1;
}
#top .sections.movie {
  overflow: hidden;
  position: relative;
  height: 200px;
}
#top .sections.movie h2 {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -30px;
  width: 100%;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #fff;
  z-index: 2;
}
#top .sections.movie h2 .subTitle {
  display: block;
  position: relative;
  margin-top: 20px;
  padding-top: 14px;
  font-size: 14px;
}
#top .sections.movie h2 .subTitle:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -5px;
  width: 10px;
  height: 1px;
  background: #fff;
}
#top .sections.movie .bg {
  position: relative;
  height: 100%;
  background: url('../img/top/movie_bg.jpg') no-repeat center -40px;
  z-index: 1;
}
#top .sections.making {
  float: right;
  margin-bottom: 0;
  width: 22.4609375%;
  overflow: hidden;
}
#top .sections.making > a {
  display: block;
  position: relative;
  height: 200px;
}
#top .sections.making h2 {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -27px;
  width: 100%;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #231815;
  z-index: 2;
}
#top .sections.making .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/top/making_bg.jpg) no-repeat center center;
  background-size: cover;
  z-index: 1;
}
#top .sections.interview {
  position: relative;
  float: left;
  margin-bottom: 0;
  width: 73.828125%;
  height: 200px;
  overflow: hidden;
}
#top .sections.interview h2 {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -63px;
  padding: 15px 0;
  width: 100%;
  text-align: center;
  line-height: 1.5;
  font-size: 18px;
  color: #231815;
  z-index: 2;
  background: url('../img/top/interview_text_bg.png') no-repeat center center;
}
#top .sections.interview h2 .subTitle {
  display: block;
  position: relative;
  margin-top: 20px;
  padding-top: 14px;
  font-size: 14px;
}
#top .sections.interview h2 .subTitle:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -5px;
  width: 10px;
  height: 1px;
  background: #4e4949;
}
#top .sections.interview .bg {
  position: relative;
  height: 100%;
  background: url('../img/top/interview_bg.jpg') no-repeat center -30px;
  z-index: 1;
}
#top .sections.news {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  right: 0;
  padding: 20px;
  width: 22.4609375%;
  background: #fff;
}
#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 {
  visibility: hidden !important;
  margin-top: 21px;
  width: 190px;
}
#top.tablet .sections.lowers .lowerBtns li .bg {
  background-position-y: center !important;
}
.lower main {
  padding-top: 100px;
}
.lower .pageTitle {
  position: absolute;
  width: 100%;
  height: 100%;
}
.lower .pageTitle img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.lower .intro {
  position: relative;
  margin-bottom: 160px;
}
.lower .intro:before {
  content: '';
  display: block;
  position: absolute;
  bottom: -120px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #221815;
}
.lower .intro .lead {
  float: right;
  max-width: 580px;
  line-height: 2.1;
  font-size: 16px;
}
.lower .sectionTitle01 {
  padding-bottom: 70px;
  text-align: center;
  line-height: 1.4;
  font-size: 18px;
  font-weight: normal;
  color: #808080;
}
.lower .movieModalArea {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
}
.lower .movieModalArea .wrap {
  max-width: 750px;
}
.lower .movieModalArea .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -264px 0 0 -350px;
}
.lower .movieModalArea .layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: -1;
}
.lower .movieModalArea .closeBtn {
  cursor: pointer;
  position: absolute;
  top: 50%;
  right: 50%;
  margin: 200px -400px 0 0;
}
@media (min-width: 769px) {
  .lower .movieModalArea .closeBtn:hover {
    opacity: 0.7;
  }
}
.lower .imageModalArea {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
}
.lower .imageModalArea .layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: -1;
}
.lower .imageModalArea .closeBtn {
  cursor: pointer;
  position: absolute;
  top: 50%;
  right: 50%;
  margin: 250px -512px 0 0;
}
@media (min-width: 769px) {
  .lower .imageModalArea .closeBtn:hover {
    opacity: 0.7;
  }
}
.lower .imageModalArea .image {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.lower .imageModalArea .image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 100%;
}
.lower #slide01 {
  position: relative;
  height: 530px;
  overflow: hidden;
}
.lower #slide01 .slideFrame {
  position: relative;
  margin: 0 auto;
  width: 568px;
  height: 100%;
}
.lower #slide01 .slider {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
.lower #slide01 .slider li {
  float: left;
  padding-right: 28px;
  width: 568px;
  text-align: center;
}
.lower #slide01 .slider li img {
  width: 100%;
  height: auto;
}
.lower #slide01 .slider li .image {
  padding-bottom: 40px;
}
.lower #slide01 .slider li dt {
  padding-bottom: 20px;
  line-height: 1.3;
  font-size: 18px;
}
.lower #slide01 .slider li dd {
  line-height: 1.7;
  font-size: 14px;
}
.lower #slide01 .controller {
  position: absolute;
  top: 189px;
  left: 50%;
  margin: -20px 0 0 -330px;
  width: 660px;
  z-index: 2;
}
.lower #slide01 .controller li {
  position: absolute;
  top: 0;
}
.lower #slide01 .controller li a {
  display: block;
}
.lower #slide01 .controller li:first-child {
  left: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  transform: rotate(180deg);
}
.lower #slide01 .controller li:last-child {
  right: 0;
}
.lower #slide01 .covers li {
  position: absolute;
  top: 0;
  height: 378px;
  background: rgba(255, 255, 255, 0.6);
}
@media (min-width: 769px) {
  .lower #slide01 .covers li {
    width: 19.54% !important;
  }
}
.lower #slide01 .covers li:first-child {
  left: 0;
}
.lower #slide01 .covers li:last-child {
  right: 0;
}
#about .intro {
  margin-bottom: 120px;
}
#about .intro:before {
  display: none;
}
#about .intro .pageTitle img {
  top: -20px;
  left: 50px;
}
#about .mainVisual {
  margin-bottom: 40px;
  height: 300px;
  background: url('../img/about/mv.jpg') no-repeat center center;
  background-size: cover;
}
#about .sections .readBtn {
  box-sizing: border-box;
  cursor: pointer;
  margin: 0 auto;
  padding: 14px 3%;
  max-width: 290px;
  border: 1px solid #000;
  border-radius: 8px;
  line-height: 1;
  text-align: center;
  font-size: 12px;
}
@media (min-width: 769px) {
  #about .sections .readBtn:hover {
    opacity: 0.7;
  }
}
#about .sections .readBtn.hidden {
  pointer-events: none;
  opacity: 0 !important;
}
#about .sections.interview {
  margin: -340px auto 40px;
  padding: 340px 0 140px;
}
#about .sections.interview .sectionTitle01 {
  padding-bottom: 120px;
}
#about .sections.interview > .catch {
  padding-bottom: 45px;
  line-height: 1.4;
  text-align: center;
  font-size: 24px;
}
#about .sections.interview > .lead {
  padding-bottom: 140px;
  line-height: 2.1;
  text-align: center;
  font-size: 16px;
}
#about .sections.interview .bgArea {
  overflow: hidden;
  margin-bottom: 50px;
  height: 300px;
}
#about .sections.interview .bgArea a {
  box-sizing: border-box;
  display: block;
  position: relative;
  height: 100%;
  color: #231815;
}
#about .sections.interview .bgArea .textArea {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  padding: 20px 30px;
  width: 400px;
  height: 100%;
  z-index: 2;
}
#about .sections.interview .bgArea .info,
#about .sections.interview .bgArea .name {
  position: absolute;
  left: 30px;
}
#about .sections.interview .bgArea .catch {
  line-height: 1.7;
  font-size: 24px;
}
#about .sections.interview .bgArea .info {
  bottom: 52px;
  line-height: 2;
  font-size: 12px;
}
#about .sections.interview .bgArea .name {
  bottom: 20px;
  font-size: 20px;
}
#about .sections.interview .bgArea .name .en {
  padding-left: 20px;
  font-size: 12px;
}
#about .sections.interview .bgArea .bg {
  position: relative;
  height: 100%;
  background: url('../img/about/interview_cont01_bg.jpg') no-repeat center center;
  background-size: cover;
  z-index: 1;
}
#about .sections.interview .content {
  display: none;
  position: relative;
  padding: 50px 0 120px;
}
#about .sections.interview .content .paragraph {
  padding: 0 30px 100px;
}
#about .sections.interview .content .paragraph:nth-last-of-type(2) {
  padding-bottom: 0;
}
#about .sections.interview .content .paragraph dl {
  float: left;
  width: 520px;
}
#about .sections.interview .content .paragraph dt {
  padding-bottom: 70px;
  line-height: 1.9;
  font-size: 18px;
}
#about .sections.interview .content .paragraph dd {
  line-height: 2.1;
  font-size: 16px;
}
#about .sections.interview .content .paragraph .imageList {
  float: right;
  width: 400px;
  text-align: right;
}
#about .sections.interview .content .paragraph .imageList li {
  padding-bottom: 20px;
  line-height: 0;
}
#about .sections.interview .content .paragraph .imageList li:last-child {
  padding: 0;
}
#about .sections.interview .content .paragraph.pattern02 dl {
  float: right;
}
#about .sections.interview .content .paragraph.pattern02 .imageList {
  float: left;
}
#about .sections.interview .content .closeBtn {
  cursor: pointer;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (min-width: 1025px) {
  #about .sections.interview .content .closeBtn:hover {
    opacity: 0.7;
  }
}
#about .sections.interview .cont01 {
  padding-bottom: 100px;
}
#about .sections.interview .cont02 .textArea {
  right: 0;
  left: auto;
}
#about .sections.interview .cont02 .bgArea .bg {
  background-image: url('../img/about/interview_cont02_bg.jpg');
}
#about .sections.making {
  counter-reset: flowNum;
  position: relative;
  padding: 340px 0 150px;
}
#about .sections.making:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 300px;
  background: url('../img/about/making_main.jpg') no-repeat center center;
  background-size: cover;
}
#about .sections.making > header {
  padding-bottom: 50px;
  text-align: center;
}
#about .sections.making > header h3 {
  padding-bottom: 120px;
}
#about .sections.making > header .catch {
  padding-bottom: 40px;
  font-size: 24px;
}
#about .sections.making > header .lead {
  line-height: 2.1;
  font-size: 16px;
}
#about .sections.making .accCont {
  display: none;
}
#about .sections.making .flows {
  counter-increment: flowNum;
  padding-bottom: 100px;
}
#about .sections.making .flows > header {
  box-sizing: border-box;
  float: right;
  padding: 90px 3%;
  width: 490px;
  height: 490px;
  text-align: center;
  background: #efefef;
}
#about .sections.making .flows > header h4 {
  position: relative;
  margin-bottom: 40px;
  padding: 90px 0 50px;
  line-height: 1.4;
  font-size: 24px;
  font-weight: normal;
}
#about .sections.making .flows > header h4:before {
  content: counter(flowNum);
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -30px;
  padding: 18px 0;
  width: 60px;
  border-radius: 30px;
  line-height: 1;
  text-align: center;
  color: #000;
  background: #fff;
}
#about .sections.making .flows > header h4:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -1px;
  width: 1px;
  height: 22px;
  background: #000;
}
#about .sections.making .flows > header .text {
  line-height: 2.1;
  font-size: 16px;
}
#about .sections.making .flows .image {
  float: left;
  width: 512px;
}
#about .sections.making .flows .images {
  float: left;
  width: 512px;
}
#about .sections.making .flows .images li {
  line-height: 0;
}
#about .sections.making .flows .images li:first-child {
  padding-bottom: 18px;
}
#about .sections.making .flows .images li:nth-child(n + 2) {
  width: 48.2421875%;
}
#about .sections.making .flows .images li:nth-child(2) {
  float: left;
}
#about .sections.making .flows .images li:last-child {
  float: right;
}
#about .sections.making .flows:nth-of-type(2n) > header {
  float: left;
}
#about .sections.making .flows:nth-of-type(2n) .image,
#about .sections.making .flows:nth-of-type(2n) .images {
  float: right;
}
#about .sections.making .endCont > header {
  padding-bottom: 30px;
  text-align: center;
}
#about .sections.making .endCont > header h5 {
  padding-bottom: 40px;
  line-height: 1.4;
  font-size: 24px;
  font-weight: normal;
}
#about .sections.making .endCont > header .lead {
  line-height: 2.1;
  font-size: 16px;
}
#about .sections.making .endCont .image img {
  width: 100%;
  height: auto;
}
#about .sections.making .closeBtn {
  cursor: pointer;
  position: absolute;
  right: 5%;
  bottom: 200px;
}
#about .movieThumb {
  margin: 0 auto 25px;
  max-width: 600px;
  height: 300px;
  overflow: hidden;
}
#about .movieThumb a {
  display: block;
  position: relative;
  height: 100%;
}
#about .movieThumb a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60px;
  height: 60px;
  margin: -30px 0 0 -30px;
  background: url('../img/common/icon_play.png') no-repeat;
  z-index: 2;
}
#about .movieThumb .bg {
  display: block;
  height: 100%;
  background: url('../img/about/making_movie_thumb.jpg') no-repeat center center;
  background-size: cover;
}
#about .movieCap {
  text-align: center;
  line-height: 2.1;
  font-size: 16px;
}
#concept.conceptTop .intro:before {
  display: none;
}
#concept.conceptTop .intro .pageTitle img {
  left: 60px;
}
#concept.conceptTop main .lowerLinks {
  margin: 0 auto;
  max-width: 617px;
}
#concept.conceptTop main .lowerLinks li {
  float: left;
  width: 294px;
  padding-right: 29px;
}
#concept.conceptTop main .lowerLinks li:last-child {
  padding: 0;
}
#concept.conceptTop main .lowerLinks li a {
  display: block;
  color: #231815;
}
#concept.conceptTop main .lowerLinks li a:hover {
  opacity: 1;
}
@media (min-width: 769px) {
  #concept.conceptTop main .lowerLinks li a:hover p,
  #concept.conceptTop main .lowerLinks li a:hover div {
    background: #f1f7fa;
  }
}
#concept.conceptTop main .lowerLinks li div,
#concept.conceptTop main .lowerLinks li p {
  box-sizing: border-box;
  border: 1px solid #615c5b;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}
#concept.conceptTop main .lowerLinks li .icon {
  float: left;
  margin-bottom: 4px;
  padding: 19px 0;
  width: 106px;
  height: 89px;
  text-align: center;
}
#concept.conceptTop main .lowerLinks li .en {
  float: right;
  padding: 27px 30px;
  width: 184px;
  height: 89px;
  line-height: 1.4;
  font-size: 13px;
}
#concept.conceptTop main .lowerLinks li .ja {
  clear: both;
  margin-bottom: 4px;
  padding: 30px 26px 29px;
  font-size: 28px;
}
#concept.conceptTop main .lowerLinks li .catch {
  padding: 18px;
  line-height: 2;
  font-size: 14px;
}
@media (min-width: 769px) {
  #concept.conceptTop main .lowerLinks li:nth-child(2) a:hover p,
  #concept.conceptTop main .lowerLinks li:nth-child(2) a:hover div {
    background: #faf5ed;
  }
}
@media (min-width: 769px) {
  #concept.conceptTop main .lowerLinks li:last-child a:hover p,
  #concept.conceptTop main .lowerLinks li:last-child a:hover div {
    background: #f8f1f1;
  }
}
#concept.detail {
  counter-reset: pointNum;
}
#concept.detail .siteHeader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
}
#concept.detail .intro,
#concept.detail .sections {
  min-height: 570px;
}
#concept.detail .pageTop {
  cursor: pointer;
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 5;
}
#concept.detail .sections:last-of-type {
  padding-bottom: 0 !important;
}
#concept.detail .sections:last-of-type .notFade {
  opacity: 1 !important;
}
#concept.detail .intro {
  margin-bottom: 500px;
}
#concept.detail .intro:before {
  display: none;
}
#concept.detail .intro h2 {
  margin-bottom: 50px;
  padding: 30px 0 0;
  border-top: 1px solid #221815;
}
#concept.detail .intro .catch {
  float: left;
}
#concept.detail .intro > dl {
  float: right;
  padding-top: 60px;
  width: 480px;
}
#concept.detail .intro > dl dt {
  padding-bottom: 50px;
  line-height: 2;
  font-size: 24px;
}
#concept.detail .intro > dl dd {
  line-height: 2.2;
  font-size: 18px;
}
#concept.detail .sections {
  position: relative;
}
#concept.detail .sections > header {
  box-sizing: border-box;
  position: fixed;
  top: 50%;
  left: 50%;
  margin: -150px 0 0 -512px;
  padding: 50px 200px;
  max-width: 1024px;
  z-index: 3;
  background: url('../img/concept/section_header_bg01.png') no-repeat center center;
  background-size: 100% 100%;
  opacity: 0;
}
#concept.detail .sections > header h3 {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 25px;
  line-height: 1.4;
  text-align: center;
  font-size: 30px;
  font-weight: normal;
}
#concept.detail .sections > header h3:after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -7px;
  width: 15px;
  height: 1px;
  background: #231815;
}
#concept.detail .sections > header .lead {
  line-height: 2.1;
  font-size: 16px;
}
#concept.detail .sections > header .lead .annotation {
  display: inline-block;
  line-height: 1.7;
  font-size: 12px;
}
#concept.detail .sections .textArea {
  clear: both;
  padding: 300px 0 70px;
  position: relative;
  float: left;
  width: 320px;
  z-index: 4;
}
#concept.detail .sections .textArea:nth-of-type(n + 2) {
  padding-top: 0;
}
#concept.detail .sections .textArea:last-of-type {
  padding-bottom: 0;
}
#concept.detail .sections .textArea h4 {
  margin-bottom: 50px;
  padding: 8px 18px 7px;
  line-height: 1.4;
  font-size: 18px;
  color: #fff;
  background: #1e425c;
}
#concept.detail .sections .modelImage {
  display: none;
}
#concept.detail .sections dt {
  padding-bottom: 25px;
  line-height: 1.5;
  font-size: 17px;
}
#concept.detail .sections dd {
  line-height: 1.7;
  font-size: 14px;
}
#concept.detail .sections dd .annotation {
  display: block;
  padding-top: 5px;
  line-height: 1.7;
  font-size: 12px;
}
#concept.detail .sections .nums {
  padding-bottom: 50px;
}
#concept.detail .sections .nums:last-of-type {
  padding-bottom: 0;
}
#concept.detail .sections .nums .numText {
  counter-increment: pointNum;
}
#concept.detail .sections .nums .numText dt {
  position: relative;
  padding-left: 25px;
}
#concept.detail .sections .nums .numText dt:after {
  content: counter(pointNum);
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  padding: 2px 0;
  width: 18px;
  -webkit-border-radius: 9px;
  -moz-border-radius: 9px;
  -ms-border-radius: 9px;
  border-radius: 9px;
  text-align: center;
  line-height: 1;
  font-size: 14px;
  background: #005982;
  color: #fff;
}
#concept.detail .sections .images {
  padding-top: 20px;
}
#concept.detail .sections .images li {
  padding-bottom: 25px;
  text-align: center;
}
#concept.detail .sections .images li:last-child {
  padding-bottom: 0;
}
#concept.detail .sections .moreBtn {
  padding: 20px 0;
  text-align: center;
  line-height: 1;
  font-size: 12px;
}
#concept.detail .sections .moreBtn a {
  display: block;
  padding: 16px 3% 15px;
  border: 1px solid #005982;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
  color: #005982;
  background: #fff;
}
#concept.detail .sections .modalBtn {
  box-sizing: border-box;
  cursor: pointer;
  padding: 16px 3% 15px;
  width: 100%;
  text-align: center;
  line-height: 1;
  font-size: 12px;
  border: 1px solid #005982;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
  color: #005982;
  background: #fff;
}
@media (min-width: 769px) {
  #concept.detail .sections .modalBtn:hover {
    opacity: 0.7 !important;
  }
}
#concept.detail section.movieSec .movieCap {
  padding-bottom: 30px;
  font-size: 18px;
}
#concept.detail section.movieSec .thumb {
  margin-bottom: 20px;
  height: 200px;
  overflow: hidden;
}
#concept.detail section.movieSec .thumb a {
  display: block;
  position: relative;
  height: 100%;
}
#concept.detail section.movieSec .thumb a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 48px;
  height: 48px;
  margin: -24px 0 0 -24px;
  background: url(../img/common/icon_play02.png) no-repeat;
  z-index: 2;
}
#concept.detail section.movieSec .thumb .bg {
  display: block;
  height: 100%;
  background: url('../img/concept/water/movie_thumb.jpg') no-repeat center center;
  background-size: cover;
}
#concept.detail .modelImageArea {
  display: none;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  z-index: 1;
}
#concept.detail .modelImageArea .inner {
  box-sizing: border-box;
  height: 100%;
}
#concept.detail .modelImageArea .inner > img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#concept.detail .modelImageArea .nums {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#concept.detail .modelImageArea .nums li {
  position: absolute;
  width: 3.1757369615%;
  line-height: 0;
  opacity: 0;
}
#concept.detail .modelImageArea .nums img {
  width: 100%;
  height: auto;
}
#concept.detail.tablet .intro {
  margin-bottom: 0;
  padding: 100px 0 !important;
  min-height: 0;
}
#concept.detail.tablet .intro .catch {
  margin: 0 auto;
}
#concept.detail.tablet .sections {
  padding: 80px 0 !important;
  min-height: 1200px;
}
#concept.detail.tablet .sections:last-of-type {
  padding-bottom: 150px !important;
}
#concept.detail.tablet .sections > header {
  position: relative;
  top: auto;
  left: auto;
  margin: 0 0 100px !important;
  opacity: 1 !important;
}
#concept.detail.tablet .sections .textArea {
  padding-top: 0 !important;
}
#concept.detail.tablet .sections .modelImage {
  display: block;
  position: absolute;
  top: 400px;
  right: 0;
  max-width: 680px;
  z-index: 1;
}
#concept.detail.tablet .sections .modelImage img {
  max-width: 100%;
  height: auto;
}
#concept.detail.tablet .modelImageArea {
  display: none !important;
}
#concept.detail.water main {
  background: url('../img/concept/water/bg.jpg') no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
}
#concept.detail.water .section01 > header {
  margin-top: -170px;
}
#concept.detail.water .modelImageArea .nums li:first-child {
  top: 13%;
  left: 57%;
}
#concept.detail.water .modelImageArea .nums li:nth-child(2) {
  top: 40%;
  left: 22.8%;
  width: 5.8968253968%;
}
#concept.detail.water .modelImageArea .nums li:nth-child(3) {
  top: 60%;
  left: 63%;
}
#concept.detail.water .modelImageArea .nums li:nth-child(4) {
  top: 70%;
  left: 44.8%;
  width: 13.8321995465%;
}
#concept.detail.water .modelImageArea .nums li:nth-child(5) {
  top: 33.5%;
  left: 71.3%;
  width: 16.1009070295%;
}
#concept.detail.water .modelImageArea .nums li:nth-child(6) {
  top: 55%;
  left: 13.5%;
  width: 26.8707482993%;
}
#concept.detail.water .modelImageArea .nums li:nth-child(7) {
  top: 16%;
  left: 27%;
  width: 18.3673469388%;
}
#concept.detail.water .modelImageArea .nums li:last-child {
  top: 33%;
  left: 65%;
  width: 27.3253968254%;
}
#concept.detail.water.tablet main {
  background: none;
}
#concept.detail.water.tablet .section01 .modelImage {
  top: 450px;
}
#concept.detail.water.tablet .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 main {
  background: url('../img/concept/electric/bg.png') no-repeat left top #303030;
  background-attachment: fixed;
}
#concept.detail.electric main p,
#concept.detail.electric main dt,
#concept.detail.electric main dd {
  color: #fff;
}
#concept.detail.electric .intro .catch {
  margin-left: -50px;
}
#concept.detail.electric .sections > header {
  background-image: url(../img/concept/section_header_bg02.png);
}
#concept.detail.electric .sections > header h3:after {
  background: #fff;
}
#concept.detail.electric .sections .textArea h4 {
  background: #e1ab42;
}
#concept.detail.electric .sections .nums .numText dt:after {
  color: #34312e;
  background: #e1ab42;
}
#concept.detail.electric .sections .moreBtn a,
#concept.detail.electric .sections .modalBtn {
  border-color: #d58a00;
  color: #d58a00;
}
#concept.detail.electric .movieSec .thumb .bg {
  background-image: url('../img/concept/electric/movie_thumb.jpg');
}
#concept.detail.electric .modelImageArea .nums li:first-child {
  top: 8%;
  left: 62.5%;
}
#concept.detail.electric .modelImageArea .nums li:nth-child(2) {
  top: 41%;
  left: 43.5%;
  width: 13.9455782313%;
}
#concept.detail.electric .modelImageArea .nums li:nth-child(3) {
  top: 44%;
  left: 3.5%;
  width: 82.7664399093%;
}
#concept.detail.electric .modelImageArea .nums li:nth-child(4) {
  top: 65%;
  left: 40.5%;
}
#concept.detail.electric .modelImageArea .nums li:last-child {
  top: 25%;
  left: 55%;
}
#concept.detail.life main {
  background: #f9f8f6;
}
#concept.detail.life .sections .textArea h4 {
  background: #d28b89;
}
#concept.detail.life .sections .nums .numText dt:after {
  background: #d28b89;
}
#concept.detail.life .sections .moreBtn a,
#concept.detail.life .sections .modalBtn {
  border-color: #d28b89;
  color: #d28b89;
}
#concept.detail.life .movieSec .thumb .bg {
  background-image: url('../img/concept/life/movie_thumb.jpg');
}
#concept.detail.life .modelImageArea .nums li:first-child {
  top: 20.5%;
  left: 60%;
}
#concept.detail.life .modelImageArea .nums li:nth-child(2) {
  top: 27.5%;
  left: 63.5%;
}
#concept.detail.life .modelImageArea .nums li:nth-child(3) {
  top: 9.5%;
  left: 71.8%;
  width: 24.8310657596%;
}
#concept.detail.life .modelImageArea .nums li:nth-child(4) {
  top: 31.5%;
  left: 45.7%;
}
#concept.detail.life .modelImageArea .nums li:nth-child(5) {
  top: 5%;
  left: 15%;
  width: 19.7290249433%;
}
#concept.detail.life .modelImageArea .nums li:last-child {
  top: 0.5%;
  left: 43.5%;
  width: 19.9546485261%;
}
#design .pageTitle img {
  top: -20px;
  left: 110px;
}
#design .intro {
  margin: 80px auto 120px;
}
#design .intro:before {
  display: none;
}
#design .intro .lead {
  padding-right: 60px;
}
#design .sectionTabs {
  box-sizing: border-box;
  margin-bottom: 30px;
  padding: 0 110px 150px;
  border-bottom: 1px solid #000;
}
#design .sectionTabs li {
  box-sizing: border-box;
  float: left;
  margin-right: 55px;
  width: 230px;
  border: 1px solid #000;
  border-radius: 3px;
}
#design .sectionTabs li:last-child {
  margin-right: 0;
}
#design .sectionTabs li a {
  display: block;
  padding: 13px 3%;
  text-align: center;
  font-size: 14px;
  color: #000;
}
@media (min-width: 769px) {
  #design .sectionTabs li a:hover {
    color: #fff;
    background: #000;
  }
}
#design .sectionTitle01 {
  padding-bottom: 100px;
}
#design .sections {
  padding-bottom: 120px;
}
#design .sections:last-of-type {
  padding: 0;
}
#design .sections.philosophy {
  position: relative;
  padding: 340px 0 90px;
}
#design .sections.philosophy > header {
  padding-bottom: 80px;
  text-align: center;
}
#design .sections.philosophy > header .catch {
  padding-bottom: 40px;
  line-height: 1.4;
  font-size: 24px;
}
#design .sections.philosophy > header .lead {
  padding-bottom: 120px;
  line-height: 2.1;
  font-size: 16px;
}
#design .sections.philosophy > header .images li {
  float: left;
}
#design .sections.philosophy > header .images li:last-child {
  float: right;
}
#design .sections.philosophy .mainImage {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 300px;
  background: url('../img/design/philosophy_mv.jpg') no-repeat center center;
  background-size: cover;
}
#design .sections.philosophy .inSections {
  padding-bottom: 80px;
}
#design .sections.philosophy .inSections:last-of-type {
  padding-bottom: 0;
}
#design .sections.philosophy .inSections > header h4 {
  position: relative;
  margin-bottom: 40px;
  padding-bottom: 30px;
  line-height: 1.5;
  font-size: 24px;
  font-weight: normal;
}
#design .sections.philosophy .inSections > header h4:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 12px;
  height: 1px;
  background: #000;
}
#design .sections.philosophy .inSections > header .lead {
  line-height: 2.1;
  font-size: 16px;
}
#design .sections.philosophy .inSec01 > header .lead {
  float: left;
  width: 480px;
}
#design .sections.philosophy .inSec01 > header .image {
  float: right;
  padding-top: 20px;
  width: 463px;
}
#design .sections.philosophy .inSec01 .images {
  clear: both;
  padding-top: 80px;
}
#design .sections.philosophy .inSec01 .images li {
  float: left;
  line-height: 0;
}
#design .sections.philosophy .inSec01 .images li:first-child {
  padding-bottom: 1.5%;
  width: 63.57421875%;
}
#design .sections.philosophy .inSec01 .images li:nth-child(2) {
  float: right;
  width: 34.9609375%;
}
#design .sections.philosophy .inSec01 .images li:nth-child(3) {
  padding-right: 1.5%;
  width: 42.3828125%;
}
#design .sections.philosophy .inSec01 .images li:last-child {
  width: 19.62890625%;
}
#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 {
  float: right;
  width: 450px;
}
#design .sections.philosophy .inSec03 .image {
  float: left;
  padding-top: 15px;
}
#design .sections.philosophy .inSec04 {
  position: relative;
  padding-top: 690px;
}
#design .sections.philosophy .inSec04 > header {
  margin: 0 auto;
  max-width: 610px;
}
#design .sections.philosophy .inSec04 .image {
  position: absolute;
  top: 0;
  left: 0;
}
#design .sections.designer {
  padding-top: 30px;
  max-width: 880px;
  border-top: 1px solid #000;
}
#design .sections.designer > header {
  padding-bottom: 120px;
}
#design .sections.designer > header .logo {
  padding-bottom: 60px;
  text-align: center;
}
#design .sections.designer > header .info {
  margin: 0 auto;
  max-width: 200px;
}
#design .sections.designer > header .info .company {
  padding-bottom: 30px;
  font-size: 18px;
}
#design .sections.designer > header .info .position {
  padding-bottom: 30px;
  font-size: 14px;
}
#design .sections.designer > header .info .name {
  font-size: 24px;
}
#design .sections.designer .profile {
  float: left;
  width: 420px;
}
#design .sections.designer .profile h4 {
  margin-bottom: 30px;
  padding: 5px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  font-size: 14px;
  font-weight: normal;
}
#design .sections.designer .profile li {
  padding-left: 4.3em;
  text-indent: -4.3em;
  line-height: 2;
  font-size: 14px;
}
#design .sections.designer > .image {
  float: right;
}
#movie h2 {
  padding-bottom: 100px;
}
#movie section.gallery {
  padding-bottom: 100px;
}
#movie section.gallery .movieList {
  text-align: center;
}
#movie section.gallery .movieList li {
  padding-bottom: 100px;
}
#movie section.gallery .movieList li .thumb {
  margin-bottom: 45px;
  height: 240px;
  overflow: hidden;
}
#movie section.gallery .movieList li .thumb a {
  display: block;
  position: relative;
  height: 100%;
}
#movie section.gallery .movieList li .thumb a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60px;
  height: 60px;
  margin: -30px 0 0 -30px;
  background: url('../img/common/icon_play.png') no-repeat;
  z-index: 2;
}
#movie section.gallery .movieList li .thumb .bg {
  display: block;
  height: 100%;
  background: url('../img/movie/gallery_movie01.jpg') no-repeat center center;
  background-size: cover;
}
#movie section.gallery .movieList li dt {
  padding-bottom: 10px;
  font-size: 30px;
}
#movie section.gallery .movieList li dd {
  line-height: 2.1;
  font-size: 16px;
}
#movie section.gallery .movieList li dd:first-of-type {
  padding-bottom: 20px;
}
#movie section.chapter h3 {
  position: relative;
  margin-bottom: 40px;
  text-align: center;
  font-weight: normal;
  font-size: 18px;
}
#movie section.chapter h3:after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
}
#movie section.chapter h3 span {
  display: inline-block;
  position: relative;
  padding: 0 15px;
  background: #fff;
  z-index: 2;
}
#movie section.chapter .movieList {
  text-align: center;
}
#movie section.chapter .movieList li {
  float: left;
  padding-right: 20px;
  width: 241px;
}
#movie section.chapter .movieList li .thumb {
  margin-bottom: 20px;
  height: 170px;
  overflow: hidden;
}
#movie section.chapter .movieList li .thumb a {
  display: block;
  position: relative;
  height: 100%;
}
#movie section.chapter .movieList li .thumb a:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60px;
  height: 60px;
  margin: -30px 0 0 -30px;
  background: url('../img/common/icon_play.png') no-repeat;
  z-index: 2;
}
#movie section.chapter .movieList li .thumb .bg {
  display: block;
  height: 100%;
  background: url('../img/movie/chapter_movie01.jpg') no-repeat center center;
  background-size: cover;
}
#movie section.chapter .movieList li:nth-child(2) .thumb .bg {
  background-image: url('../img/movie/chapter_movie02.jpg');
}
#movie section.chapter .movieList li:nth-child(3) .thumb .bg {
  background-image: url('../img/movie/chapter_movie03.jpg');
}
#movie section.chapter .movieList li:last-child {
  padding: 0;
}
#movie section.chapter .movieList li:last-child .thumb .bg {
  background-image: url('../img/movie/chapter_movie04.jpg');
}
#movie section.chapter .movieList li .caption {
  line-height: 2.1;
  font-size: 16px;
}
#tlc .intro .pageTitle img {
  top: -20px;
  left: 60px;
}
#tlc .serviceList {
  margin-bottom: -80px;
  text-align: center;
}
#tlc .serviceList li {
  float: left;
  padding: 0 90px 80px 0;
  width: 280px;
}
#tlc .serviceList li:nth-child(3n) {
  padding-right: 0;
}
#tlc .serviceList li:nth-child(3n + 1) {
  clear: both;
}
#tlc .serviceList li .image {
  padding-bottom: 25px;
}
#tlc .serviceList li dl {
  padding-bottom: 25px;
}
#tlc .serviceList li dt {
  padding-bottom: 20px;
  line-height: 1.4;
  font-size: 18px;
}
#tlc .serviceList li dd {
  line-height: 1.7;
  font-size: 13px;
}
@media (min-width: 769px) {
  #tlc .serviceList li dd {
    height: auto !important;
  }
}
#tlc .serviceList li .more {
  line-height: 1;
  font-size: 12px;
}
#tlc .serviceList li .more:nth-of-type(3) {
  margin-top: 10px;
}
#tlc .serviceList li .more a {
  color: #231815;
  text-decoration: underline;
}
#tlc .serviceList li .more a:hover {
  opacity: 1;
}
@media (min-width: 1025px) {
  #tlc .serviceList li .more a:hover {
    text-decoration: none;
  }
}
#access section {
  position: relative;
  padding-bottom: 90px;
  text-align: center;
}
#access section .googleMap {
  margin-bottom: 50px;
  height: 600px;
}
#access section .googleMap iframe {
  width: 100%;
  height: 100%;
}
#access section .logo {
  padding-bottom: 30px;
}
#access section .address {
  padding-bottom: 50px;
  line-height: 2.1;
  font-size: 16px;
}
#access section .lead {
  padding-bottom: 20px;
  line-height: 1.7;
  font-size: 20px;
}
#access section .requestBtn {
  margin: 0 auto;
  max-width: 400px;
  line-height: 1;
}
#access section .requestBtn a {
  display: block;
  padding: 13px 3%;
  border: 1px solid #000;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
  font-size: 12px;
  color: #000;
}
#access section .closeBtn {
  cursor: pointer;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (min-width: 769px) {
  #access section .closeBtn:hover {
    opacity: 0.7;
  }
}
