

.wrap {
  min-height: 100%;
  position: relative;
  margin-bottom: -27px;
}

.bg-p1 {
  background: url(http://www.japaneseface.jp/images/common/bg-p1.jpg);
}

.bg-p2 {
  background: url(http://www.japaneseface.jp/images/common/bg-p2.jpg);
}

.bg-p3 {
  background: url(http://www.japaneseface.jp/images/common/bg-p3.jpg);
}

.bg_red {
  background: url(http://www.japaneseface.jp/images/common/bg_red.jpg);
}

.bg_blue {
  background: url(http://www.japaneseface.jp/images/common/bg_blue.jpg);
}

.bg_green {
  background: url(http://www.japaneseface.jp/images/common/bg_green.jpg);
}

.bg_yellow {
  background: url(http://www.japaneseface.jp/images/common/bg_yellow.jpg);
}

.bg_orange {
  background: url(http://www.japaneseface.jp/images/common/bg_orange.jpg);
}

.bg_beige {
  background: url(http://www.japaneseface.jp/images/common/bg_beige.jpg);
}

.bg_pink {
  background: url(http://www.japaneseface.jp/images/common/bg_pink.jpg);
}

.bg_bluegreen {
  background: url(http://www.japaneseface.jp/images/common/bg_bluegreen.jpg);
}

.bg_purple1 {
  background: url(http://www.japaneseface.jp/images/common/bg_purple1.jpg);
}

.bg_purple2 {
  background: url(http://www.japaneseface.jp/images/common/bg_purple2.jpg);
}

.bg_navy1 {
  background: url(http://www.japaneseface.jp/images/common/bg_navy1.jpg);
}

.bg_navy2 {
  background: url(http://www.japaneseface.jp/images/common/bg_navy2.jpg);
}
.bg_vividred{
  background: url(http://www.japaneseface.jp/images/common/bg_kansai_lady.jpg);
}
.bg_vividblue{
  background: url(http://www.japaneseface.jp/images/common/bg_kansai_man.jpg);
}
.bg_red2{
  background: url(http://www.japaneseface.jp/images/common/bg_red2.jpg);
}
.bg_gold{
  background: url(http://www.japaneseface.jp/images/common/bg_gold.jpg);
}
a {
  text-decoration: none;
  color: black;
}

@media screen and (max-width: 720px) {
  .sp {
    display: block;
  }

  .pc {
    display: none;
  }
}
@media screen and (min-width: 721px) {
  .sp {
    display: none;
  }

  .pc {
    display: block;
  }

  .line-red-blue {
    background: url(http://www.japaneseface.jp/images/common/line-red-blue.png) center top no-repeat;
  }

  .line-green-yellow {
    background: url(http://www.japaneseface.jp/images/common/line-green-yellow.png) center top no-repeat;
  }

  .line-fashion {
    background: url(http://www.japaneseface.jp/images/common/line-fashion.gif) center top no-repeat;
  }
}
@-webkit-keyframes setPack {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  80% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }
}

@-moz-keyframes setPack {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  80% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }
}

@-ms-keyframes setPack {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  80% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }
}

@keyframes setPack {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  80% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }
}

@-webkit-keyframes returnPack {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }

  80% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

@-moz-keyframes returnPack {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }

  80% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

@-ms-keyframes returnPack {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }

  80% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes returnPack {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -ms-transform: scale(0.85);
    transform: scale(0.85);
  }

  80% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

.de-change-img {
  cursor: pointer;
}
.de-change-img .de-open-img {
  position: relative;
}
.de-change-img .de-close-img {
  opacity: 0;
  position: absolute !important;
  top: 0;
  left: 0;
}

.loader {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 4;
  background-color: rgba(0, 0, 0, 0);
}

.load-gif {
  width: 60px;
  height: 60px;
  background: url(http://www.japaneseface.jp/images/index/loading.gif) no-repeat center center;
  background-size: contain;
}

.load-png {
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -30px 0 0 -30px;
  background: url(http://www.japaneseface.jp/images/index/loading_bg.png) no-repeat center center;
  background-size: contain;
}

.js-roll,
.js-navi-close {
  cursor: pointer;
}

.wrap-change {
  width: 100%;
  margin: 20px 0 25px;
  position: relative;
}

.slide-in-content {
  overflow: hidden;
}

.change-img {
  line-height: 0;
  position: relative;
}

.change-pos-img {
  position: relative;
  margin-bottom: 10px;
}
.change-pos-img .btn-turn {
  bottom: 14%;
  left: 0;
  position: absolute;
}

.img-chang {
  position: relative;
  z-index: 1;
}

.bg-move-img, .roll-change-img1 {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -moz-tap-highlight-color: rgba(0, 0, 0, 0);
  -ms-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}

.bg-move-img {
  background-size: cover;
}

.roll-change-img1 {
  cursor: pointer;
  z-index: 7;
}

.set-pack-bg {
  opacity: 0;
  width: 90% !important;
}

@media screen and (max-width: 720px) {
  .set-pack-bg {
    opacity: 0;
    width: 100% !important;
  }

  .change-pos-img > img {
    width: 130% !important;
    margin-left: -15%;
  }
  .change-pos-img .btn-turn {
    bottom: 5px;
    left: 0;
    position: absolute;
  }
  .change-pos-img .btn-turn > img {
    width: 30px;
    height: auto;
  }

  .to-detail {
    height: 44px;
  }
}
@media screen and (max-height: 360px) {
  .change-pos-img > img {
    width: 80% !important;
    margin-left: 0;
  }
}
/* # レイアウト一覧
 * ## ヘッダー
 * ## セクションブロック
 * ```
 * <section class="section-block">
 * ```
 */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.landing {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 3;
}

.slide-body {
  position: relative;
  top: 0;
}

.slide-html {
  overflow: hidden;
}

.load-html,
.load-detail {
  display: none;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.load-detail {
  z-index: 3;
}

.load-html {
  top: 0;
  overflow-x: hidden;
}

.load-detail {
  top: 100%;
}

.index-slide-navi {
  width: 100%;
  position: absolute;
  bottom: 8px;
  z-index: 3;
}
.index-slide-navi ul {
  text-align: center;
  margin-left: -15px;
}
.index-slide-navi ul li {
  width: 8px;
  height: 9px;
  margin-left: 15px;
  display: inline-block;
  background: url(http://www.japaneseface.jp/images/index/slide-navi-btn-def.png) no-repeat;
  background-size: contain;
}
.index-slide-navi ul li.current {
  background: url(http://www.japaneseface.jp/images/index/slide-navi-btn-current.png) no-repeat;
  background-size: contain;
}

.slide-in-content {
  width: 100%;
  height: 100%;
  z-index: 0;
  position: relative;
}
.slide-in-content .area-visual-in {
  display: table;
  width: 100%;
  height: 100%;
}
.slide-in-content .area-visual-in > div {
  width: 90%;
  vertical-align: middle;
  display: table-cell;
}
.slide-in-content .area-visual-in .slide-btn-left {
  width: 5%;
  min-width: 100px;
  text-align: left;
}
.slide-in-content .area-visual-in .slide-btn-left a {
  display: inline-block;
  position: relative;
  left: -44px;
  z-index: 1;
}
.slide-in-content .area-visual-in .slide-btn-right {
  width: 5%;
  min-width: 100px;
  text-align: right;
}
.slide-in-content .area-visual-in .slide-btn-right a {
  display: inline-block;
  position: relative;
  right: -44px;
  z-index: 1;
}
.slide-in-content .area-visual-in .slide-main .slide-move {
  position: relative;
}
.slide-in-content .area-visual-in .slide-main .slide-move .main-img {
  margin: 0 auto;
}
.slide-in-content .area-visual-in .slide-main .slide-move .main-img > img {
  width: 50%;
  height: auto;
}

.slide-concept .area-visual-in .main-img img {
  max-width: 25%;
  height: auto;
}

.pattern1 .head-logo {
  padding: 70px 0 30px;
}

.pattern2 .head-logo {
  padding: 78px 0 28px;
  margin-bottom: 50px;
  background-color: black;
}

.pattern3 .head-logo {
  padding: 78px 0 28px;
  margin-bottom: 50px;
  background: url(http://www.japaneseface.jp/images/common/line-fashion.gif) center top no-repeat;
}

.pattern4 .head-logo {
  padding: 78px 0 28px;
  margin-bottom: 50px;
  background-color: #c4101a;
}

.global-header {
  position: absolute;
  width: 100%;
  z-index: 9999999;
}
.global-header .area-main-head {
  width: 100%;
}
.global-header .area-main-head .area-main-head-in {
  width: 95%;
  margin: 0 auto;
  top: 0;
}
.global-header .area-main-head .area-main-head-in:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.global-header .area-main-head .area-main-head-in .logo {
  width: 57px;
  left: 25px;
  position: absolute;
}
.global-header .area-main-head .area-main-head-in .navi-menu {
  margin: 33px 0 0 0;
  right: 37px;
  position: absolute;
  z-index: 2;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu {
  position: relative;
  display: inline-block;
  margin: 0 0 0 40px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu {
  height: 100%;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2;
  background: white;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news {
  width: 272px;
  right: -272px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news > div,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news > div {
  margin: 20px 25px 0 30px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news > .line-base,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news > .line-base {
  margin: 20px 25px 0 30px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news .area-news-in,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news .area-news-in {
  padding: 10px 18px 14px 30px;
  font-size: 12px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news .area-news-in dt,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news .area-news-in dt {
  font-size: 85%;
  margin-bottom: 10px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news .area-news-in dd > div,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news .area-news-in dd > div {
  line-height: 2em;
  margin-bottom: 12px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news .area-news-in dd a,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news .area-news-in dd a {
  text-decoration: underline;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu {
  width: 250px;
  right: -250px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu > div,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu > div {
  padding: 20px 18px 0 30px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu .area-menu-in,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu .area-menu-in {
  padding: 16px 18px 30px 30px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu .area-menu-in > li,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu .area-menu-in > li {
  font-size: 12px;
  padding-left: 28px;
  margin-bottom: 15px;
  background: url(http://www.japaneseface.jp/images/common/icn-navi-menu_def.png) left 2px no-repeat;
  background-size: 16px 14px;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu .area-menu-in > li a:hover,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu .area-menu-in > li a:hover {
  text-decoration: underline;
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu .area-menu-in > li.menu-current,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu .area-menu-in > li.menu-current {
  background-image: url(/images/common/icn-navi-menu_cur.png);
}
.global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu .area-menu-in > li li,
.global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu .area-menu-in > li li {
  font-size: 11px;
  margin: 10px 0 10px 12px;
}
.global-header .area-page-back {
  width: 91px;
  z-index: 1;
}

.global-footer {
  height: 27px;
  line-height: 27px;
  position: relative;
  padding-right: 18px;
  margin-top: 100px;
  background-color: #666666;
}
.global-footer .pagetop {
  height: 30px;
  position: absolute;
  left: 50%;
  bottom: 27px;
  margin-left: -19px;
}
.global-footer .copyright {
  height: 27px;
  position: relative;
  padding-right: 18px;
  background-color: #666666;
  margin-top: 100px;
}

.other-product {
  margin: 30px 0;
}

.style-under-line {
  margin: 0 auto;
  padding: 0 10px 29px;
  background: url(http://www.japaneseface.jp/images/common/bg-line-p1.png) center bottom repeat-x;
}

.line-left {
  background: url(http://www.japaneseface.jp/images/common/bg-line-p3-side-left.png) left bottom no-repeat;
}

.line-right {
  background: url(http://www.japaneseface.jp/images/common/bg-line-p3-side-right.png) right bottom no-repeat;
}

.line-base {
  background: url(http://www.japaneseface.jp/images/common/bg-line-p3-base.png) 0 bottom repeat-x;
}

.section-block {
  margin: 0 auto;
}
.section-block .section-in-block {
  max-width: 790px;
  margin: 0 auto;
  overflow: hidden;
}

.concept .area-image {
  margin-bottom: 75px;
}

.letters {
  margin: 60px auto 88px;
}

.theme-white {
  background-color: black !important;
}

.area-howto {
  margin-top: 45px !important;
}
.area-howto header {
  padding: 0 10px;
}

.read-txt {
  color: #0a8a49;
  font-size: 12px;
  display: table;
  max-width: 406px;
  padding: 0 28px;
  margin: 0 auto;
}
.read-txt p {
  vertical-align: middle;
  display: table-cell;
}
.read-txt p.img {
  width: 49px;
}
.read-txt p.txt {
  padding-left: 16px;
  letter-spacing: -0.4px;
}

@media screen and (max-width: 720px) {
  .slide-in-content .area-visual .area-visual-in {
    display: block;
    width: 100%;
    height: 100%;
  }
  .slide-in-content .area-visual .area-visual-in > div {
    display: block;
  }
  .slide-in-content .area-visual .area-visual-in .slide-btn-left {
    bottom: -12px;
    left: 0;
    position: absolute;
  }
  .slide-in-content .area-visual .area-visual-in .slide-btn-right {
    bottom: -12px;
    right: 0;
    position: absolute;
  }
  .slide-in-content .area-visual .area-visual-in .slide-main {
    width: 100%;
  }
  .slide-in-content .area-visual .area-visual-in .slide-main .to-detail img {
    width: 76px;
    height: 44px;
  }
  .slide-in-content .area-visual .area-visual-in .slide-main .main-img {
    margin: 15px 0 5px;
  }
  .slide-in-content .area-visual .area-visual-in .slide-main .main-img > img {
    width: 80%;
  }

  .slide-in-content.slide-concept .area-visual .area-visual-in .main-img > img {
    max-width: 38% !important;
    height: auto;
  }

  .pattern1 .head-logo {
    margin-top: -5px;
  }

  .pattern2 .head-logo {
    padding: 53px 0 28px;
  }

  .pattern3 .head-logo {
    padding: 53px 0 28px;
    background: url(http://www.japaneseface.jp/images/common/line-fashion-sp02.gif) 55.5% 0% no-repeat;
    background-size: 721px;
  }

  .pattern3 .theme-white {
    background: url(http://www.japaneseface.jp/images/common/line-fashion-sp01.gif) 55.5% 100% no-repeat !important;
    background-size: 721px !important;
  }

  .pattern4 .theme-white {
    margin-top: -5px;
    background: #c4101a!important;
  }

  .global-header {
    
    position: relative;
    background: none;
   
  }
  .global-header .area-main-head {
    padding: 11px 0 9px;
  }
  .global-header .area-main-head .area-main-head-in .logo img {
    width: 33px;
    height: 53px;
  }
  .global-header .area-main-head .area-main-head-in .navi-menu {
    right: 10px;
    margin: 20px 8px 0 0;
    display: none;
  }
  .global-header .area-main-head .area-main-head-in .navi-menu .btn-news,
  .global-header .area-main-head .area-main-head-in .navi-menu .btn-menu {
    margin: 0 0 0 25px;
  }
  .global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-menu, .global-header .area-main-head .area-main-head-in .navi-menu .btn-news .area-news,
  .global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-menu,
  .global-header .area-main-head .area-main-head-in .navi-menu .btn-menu .area-news {
    background: rgba(255, 255, 255, 0.95);
  }
  .global-header.theme-white {
    background: none;
    box-shadow: none;
    border-bottom: 1px solid #333333;
  }
  .global-header .area-page-back {
    position: absolute;
    left: 50%;
    bottom: -42px;
    margin-left: -45px;
  }

  .js-slide-body .global-header {
    background: none;
    box-shadow: none;
    border-bottom: none;
  }

  .letters {
    margin-right: 20px;
    text-align: center !important;
  }

  .global-footer {
    padding-right: 0;
    text-align: center;
  }
}
@media screen and (min-width: 721px) {
  .index-slide-navi {
    width: 100%;
    position: absolute;
    bottom: 25px;
  }

  .slide-in-content .area-visual .area-visual-in .main-img {
    margin-bottom: 10px;
  }

  .area-page-back {
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -45px;
  }

  .style-under-line {
    max-width: 780px;
    margin: 0 auto 27px;
  }

  .letters {
    width: 84%;
  }
}
@media screen and (max-width:360px){
  .global-header .area-main-head {
    padding:0 0 9px;
  }

}
@media screen and (max-height: 360px) {
  /* 最小高さ 360px 以下 */
  * {
    -webkit-text-size-adjust: none;
  }

  .slide-in-content .area-visual .area-visual-in .slide-main .main-img > img {
    width: 35%;
  }

  .slide-in-content.slide-concept .area-visual .area-visual-in .slide-main .main-img > img {
    max-width: 19% !important;
    height: auto;
  }
}
/* # モジュール一覧
 * ## 画像中央
 * ```
 * <figure class="img-center">
 *   <img src="">
 * ``` */
@-webkit-keyframes btnRote {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}

@-moz-keyframes btnRote {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}

@-ms-keyframes btnRote {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}

@keyframes btnRote {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}

.hdg1-page-title {
  margin: 0 0 46px;
}

.hdg2-p1 {
  margin-bottom: 26px;
}

.hdg2-p2 {
  margin-bottom: 25px;
}

.hdg2-p3 {
  margin: 54px 0 44px;
}

.hdg3-p3 {
  padding-left: 5px;
  margin-bottom: 16px;
}

.pointer {
  cursor: pointer;
}

.read-txt {
  margin-top: 5px;
}

.btn-buy {
  padding-top: 32px;
  margin: 0 0 24px;
}

.btn-contact {
  margin: 14px 0 40px;
}

.tw {
  width: 90px;
}

.fb {
  width: 100px;
}

.txt-main-p1 {
  width: 84%;
  font-size: 13px;
  margin: 0 auto 55px;
  line-height: 230%;
  text-align: justify;
}
.txt-main-p1 p {
  margin-bottom: 15px;
}

.txt-main-p2 {
  margin: 0 auto 25px;
  word-break: break-all;
}

.txt-main-p3 {
  margin-bottom: 20px;
}

.txt-main-p4 {
  margin-bottom: 55px;
  line-height: 200%;
}

.fluid-image-max {
  max-width: 100%;
  height: auto;
}

.fluid-image {
  max-width: 90%;
  height: auto;
}

.hidden {
  display: none;
}

.vi-hidden {
  visibility: hidden;
}

.css-roll:hover {
  -webkit-animation: btnRote 0.5s none ease-in-out;
  -moz-animation: btnRote 0.5s none ease-in-out;
  -ms-animation: btnRote 0.5s none ease-in-out;
  animation: btnRote 0.5s none ease-in-out;
}

.module-content {
  min-height: 100%;
}

.area-center {
  text-align: center;
}

.area-left {
  text-align: left;
}

.area-right {
  text-align: right;
}

.module-list-item-p1, .module-list-item-p2, .module-list-item-p3, .module-list-item-p4 {
  text-align: center;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.wv-center {
  position: relative;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.module-list-item-p1 .area-txt {
  text-align: center;
  font-size: 13px;
}
.module-list-item-p1 .txt-main {
  margin: 0 auto;
  text-align: left;
  line-height: 200%;
}
.module-list-item-p1 .hdg2-list-item, .module-list-item-p1 .area-image {
  margin-bottom: 30px;
}
.module-list-item-p1 .area-image {
  position: relative;
}
.module-list-item-p1 .area-image .btn {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 76px 0 0 20%;
}

.module-list-item-p2 {
  margin-bottom: 35px;
}
.module-list-item-p2 .area-image {
  margin-bottom: 64px;
  display: inline-block;
  position: relative;
}
.module-list-item-p2 .area-image img {
  z-index: 1;
  position: relative;
}
.module-list-item-p2 .area-image .btn-turn {
  left: 14px;
  bottom: -15px;
  position: absolute;
}
.module-list-item-p2 .area-txt {
  text-align: left;
  margin: 0 auto;
}
.module-list-item-p2 .area-txt .hdg-3list-title {
  margin-bottom: 30px;
}
.module-list-item-p2 .area-txt .hdg-3list-title-en {
  margin-bottom: 37px;
}
.module-list-item-p2 .area-txt .txt-main {
  max-width: 270px;
  letter-spacing: 1px;
  text-align: justify;
  text-justify: inter-word;
  font-size: 13px;
  margin: 0 auto 34px;
}
.module-list-item-p2 .area-txt .txt-main-long {
  max-width: 790px;
  letter-spacing: 1px;
  text-align: justify;
  text-justify: inter-word;
  font-size: 13px;
  margin: 0 auto 5px;
}

.module-list-item-p3 {
  margin: 0 auto;
}
.module-list-item-p3 .list {
  position: relative;
}

.module-list-item-p5 {
  text-align: center;
}
.module-list-item-p5 li {
  display: inline-block;
}

.module-tbl-p1 {
  max-width: 780px;
  width: 98%;
  margin: 0 auto 30px;
}
.module-tbl-p1 .tbl-description {
  width: 100%;
  display: table;
}
.module-tbl-p1 .tbl-title {
  font-size: 14px;
  font-weight: bold;
  margin: 15px 0 4px;
}
.module-tbl-p1 .tbl-description-title {
  width: 64px;
  vertical-align: top;
}
.module-tbl-p1 .tbl-description-content:before {
  content: "： ";
  margin-left: -17px;
}
.module-tbl-p1 .tbl-description-title, .module-tbl-p1 .tbl-description-content {
  line-height: 2.2em;
  font-size: 11px;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

@media screen and (max-width: 720px) {
  .one-logo {
    margin: 0 0 25px;
  }
  .one-logo img {
    width: 34px;
    height: 54px;
  }

  .hdg1-page-title {
    padding-top: 65px;
  }

  .hdg2-p2 {
    margin-top: 33px;
  }

  .hdg2-p3 {
    margin: 18px 0 17px;
  }

  .hdg3-p3 {
    text-align: center;
  }

  .module-list1 li {
    line-height: 0;
  }

  .module-list-item-p1 .list, .module-list-item-p2 .list {
    margin-bottom: 45px;
  }

  .module-list-item-p1 .area-image {
    margin: 0 20px 30px 20px;
  }
  .module-list-item-p1 .txt-main {
    width: 84%;
  }

  .module-list-item-p2 {
    margin-bottom: 35px;
  }
  .module-list-item-p2 .area-image {
    position: relative;
    margin-bottom: 30px;
  }
  .module-list-item-p2 .area-image .btn-turn {
    left: 13px;
    bottom: -23px;
    position: absolute;
  }
  .module-list-item-p2 .area-txt .hdg-3list-title {
    margin: 10px 0 15px;
  }
  .module-list-item-p2 .area-txt .hdg-3list-title-en {
    margin-bottom: 25px;
  }
  .module-list-item-p2 .area-txt .txt-main {
    margin-bottom: 24px;
  }
  .module-list-item-p2 .area-txt .txt-main-long {
    margin: 0 20px 24px
  }

  .module-list-item-p3 .list, .module-list-item-p4 .list {
    display: inline-block;
  }

  .module-list-item-p3 {
    margin-left: -5px;
  }
  .module-list-item-p3 .list {
    margin: 0 0 10px 9px;
  }
  .module-list-item-p3 .list:after {
    background: none;
  }

  .module-tbl-p1 {
    width: 80%;
  }
}
@media screen and (min-width: 721px) {
  .one-logo {
    position: absolute;
    top: 26px;
    left: 26px;
  }

  .txt-main-p2 {
    margin: 0 auto 35px;
  }

  .hdg1-page-title {
    padding-top: 80px;
  }

  .list {
    display: inline-block;
  }

  .module-list-item-p1 {
    text-align: left;
    margin: 0 0 80px -40px;
    max-width: 830px;
  }
  .module-list-item-p1 .list {
    vertical-align: top;
    margin: 0 0 68px 45px;
    max-width: 369px;
    width: 44%;
  }
  .module-list-item-p1 .txt-main {
    max-width: 324px;
  }

  .module-list-item-p2 {
    max-width: 1007px;
    margin: 0 auto;
  }
  .module-list-item-p2 .module-list-item-p2-in {
    margin: 0 0 35px -2%;
  }
  .module-list-item-p2 .list {
    vertical-align: top;
    margin-left: 2%;
    max-width: 475px;
    width: 47%;
  }

  .module-list-item-p3 {
    max-width: 780px;
    width: 100%;
    margin-bottom: 92px;
    display: table;
  }
  .module-list-item-p3 .list {
    display: table-cell;
    padding: 0 22px 10px 0;
    background: url("/images/lineup/icn-arrow-p1.png") 94% center no-repeat;
    background-size: 8px 13px !important;
  }
  .module-list-item-p3 .list:last-child {
    background: none;
    padding-right: 0;
  }

  .module-list-item-p4 {
    margin-left: -22px;
  }
  .module-list-item-p4 .list {
    margin-left: 22px;
  }
}
