@charset "UTF-8";
html, body {
  font-size: 15px;
  line-height: 1.8; }

a {
  text-decoration: none;
  color: #333; }

footer {
  text-align: center;
  padding: 16px 0;
  font-family: Arial, Helvetica, "sans-serif";
  background: #fff; }
  footer h2 {
    padding: 16px 0; }
  footer img {
    max-width: 114px;
    margin: 0 auto; }
  footer p {
    margin: 0 0 20px 0;
    font-size: 12px; }

img {
  vertical-align: middle; }

.pc {
  display: block; }

.sp {
  display: none; }

.fade-out {
  opacity: 1;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  -ms-transition: all 1s;
  transition: all 1s; }

.fade-in {
  opacity: 0; }

.slider {
  clear: both;
  margin-bottom: 0%; }
  .slider div {
    padding: 0 0 0 0; }
    .slider div img {
      width: 100%;
      margin: 0 0%; }

.sticky {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  width: 100%;
  max-height: 100%;
  z-index: -1; }

.x-scroll {
  width: 200%;
  overflow: hidden; }

.x-scroll_inner {
  display: flex;
  animation: 15s linear infinite xScroll; }

@keyframes xScroll {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); }
  /* .x-scroll_block 1つ分の幅だけ動かす */ }
.x-scroll_block {
  display: flex;
  width: 200%; }

.x-scroll_item {
  width: 100%; }

.x-scrollpht2 {
  width: 400%;
  overflow: hidden; }

.x-scrollpht2_inner {
  display: flex;
  animation: 40s linear infinite xScrollpht2; }

@keyframes xScrollpht2 {
  0% {
    transform: translateX(0%); }
  100% {
    transform: translateX(-75%); }
  /* .x-scroll_block 1つ分の幅だけ動かす */ }
.x-scrollpht2_block {
  display: flex;
  width: 300%; }

.x-scrollpht2_item {
  width: 100%; }

.x-scrolltxt {
  width: 200%;
  padding: 10px 0;
  overflow: hidden; }

.x-scrolltxt_inner {
  display: flex;
  animation: 30s linear infinite xScrolltxt; }

@keyframes xScrolltxt {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); }
  /* .x-scroll_block 1つ分の幅だけ動かす */ }
.x-scrolltxt_block {
  display: flex;
  width: 400%; }

.x-scrolltxt_item {
  width: 70%; }

.x-scrollpht {
  width: 280%;
  overflow: hidden; }

.x-scrollpht_inner {
  display: flex;
  animation: 20s linear infinite xScrollpht; }

@keyframes xScrollpht {
  0% {
    transform: translateX(0%); }
  100% {
    transform: translateX(-50%); }
  /* .x-scroll_block 1つ分の幅だけ動かす */ }
.x-scrollpht_block {
  display: flex;
  width: 200%; }

.x-scrollpht_item {
  width: 100%; }

header {
  width: 1000px;
  overflow: hidden;
  margin: 0 auto;
  padding-top: 40px; }
  header .pht {
    position: relative;
    width: 572px;
    float: right; }
    header .pht h1 {
      position: absolute;
      top: 46%;
      text-align: center; }
      header .pht h1 img {
        width: 50%;
        margin: 0 auto; }
  header .subttl {
    text-align: center;
    margin-bottom: 20px;
    padding-top: 170px; }
    header .subttl img {
      width: 90%;
      margin: 0 auto; }
  header dl {
    text-align: center;
    width: 394px;
    float: left; }
    header dl dt {
      margin-bottom: 5%; }
  header ul {
    display: flex;
    width: 1000px;
    margin: 0 auto 15% auto;
    padding-top: 30px; }
    header ul li {
      width: 200px; }
      header ul li a {
        display: block;
        line-height: 0;
        border-radius: 50px;
        border: 2px solid #000000;
        padding: 10% 15%; }
    header ul li:nth-child(1) {
      margin-left: 300px; }
      header ul li:nth-child(1) a {
        background: #ffffc6; }
    header ul li:nth-child(2) {
      margin-left: 20px; }
      header ul li:nth-child(2) a {
        background: #e1fff8; }

main h3 {
  text-align: center;
  margin-bottom: 10px; }
  main h3 img {
    width: 260px;
    margin: 0 auto; }
main .topArea {
  position: relative; }
  main .topArea .ttlArea {
    width: 100%;
    z-index: 100;
    top: 0;
    left: 0; }
    main .topArea .ttlArea dt {
      position: absolute;
      width: 100%;
      top: 20%;
      text-align: center; }
      main .topArea .ttlArea dt img {
        width: 50%;
        margin: 0 auto; }
    main .topArea .ttlArea dd.en {
      position: absolute;
      top: 3%;
      right: 3%;
      width: 2%; }
    main .topArea .ttlArea dd.jp {
      position: absolute;
      top: -3%;
      left: 10%;
      width: 5.5%; }
main .sdArea {
  position: relative;
  background: #ffffc6;
  z-index: 100;
  padding: 3% 0 5% 0; }
  main .sdArea h4 {
    text-align: center; }
    main .sdArea h4 img {
      width: 240px;
      padding: 1% 0;
      margin: 0 auto; }
  main .sdArea .pickup {
    position: absolute;
    top: 30%;
    left: 30%;
    z-index: 2; }
    main .sdArea .pickup img {
      width: 100px; }
  main .sdArea .pht {
    border: 2px solid #000;
    width: 375px;
    margin: 0 auto; }
    main .sdArea .pht .slick-slide img {
      display: inline-block; }
main .tdArea {
  position: relative;
  background: #ffffc6;
  z-index: 100;
  padding-bottom: 5%; }
  main .tdArea h4 {
    text-align: center; }
    main .tdArea h4 img {
      width: 36%;
      padding: 1% 0;
      margin: 0 auto; }
  main .tdArea .pht div div div div {
    width: 95%; }
main .txtArea {
  width: 850px;
  margin: 0 auto;
  overflow: hidden;
  padding: 30px 0; }
  main .txtArea p {
    float: left;
    width: 480px;
    padding-top: 10px; }
  main .txtArea .linkArea {
    letter-spacing: 2px;
    overflow: hidden;
    float: right;
    width: 300px; }
    main .txtArea .linkArea dl {
      padding: 10px 0;
      clear: both; }
    main .txtArea .linkArea dt {
      float: left;
      font-weight: 400;
      font-size: 12px;
      margin-bottom: 3px;
      line-height: 1.5;
      width: 60%; }
      main .txtArea .linkArea dt b {
        font-weight: 600; }
      main .txtArea .linkArea dt span {
        font-weight: 400;
        font-size: 13px; }
      main .txtArea .linkArea dt img {
        width: 100%; }
    main .txtArea .linkArea dd {
      float: right;
      font-family: 'Roboto', sans-serif;
      font-weight: 400;
      font-size: 11px;
      margin-bottom: 6px;
      padding-top: 20px;
      text-align: center;
      width: 32%; }
      main .txtArea .linkArea dd a {
        background: #cfd8d3;
        color: #000;
        padding: 0 15px;
        font-size: 13px;
        font-family: 'Oswald', sans-serif;
        font-weight: 300;
        display: block;
        line-height: 1;
        text-align: center;
        transition: 0.3s; }
      main .txtArea .linkArea dd a:hover {
        opacity: 0.7;
        transition: 0.3s; }
      main .txtArea .linkArea dd span {
        letter-spacing: 0; }
main #section1 {
  padding-top: 10%; }
  main #section1 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section1 .topArea .ttlArea dt {
      top: 20%; }
main #section2 {
  padding-top: 10%; }
  main #section2 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section2 .topArea .ttlArea dt {
      top: 40%; }
    main #section2 .topArea .ttlArea dd.jp {
      top: 20%;
      z-index: 1000; }
  main #section2 .tdArea {
    padding-top: 3%; }
    main #section2 .tdArea .pht {
      margin-left: -15%; }
main #section3 {
  padding-top: 10%; }
  main #section3 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section3 .topArea .ttlArea dt {
      top: 40%; }
    main #section3 .topArea .ttlArea dd.jp {
      top: 60%;
      left: 85%;
      z-index: 1000; }
  main #section3 .tdArea {
    padding-top: 3%;
    background: none;
    width: 600px;
    margin: 0 auto; }
    main #section3 .tdArea .pht {
      width: 80%; }
main #section4 {
  padding-top: 10%; }
  main #section4 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section4 .topArea .ttlArea dt {
      top: 40%; }
main #section5 {
  padding-top: 10%; }
  main #section5 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section5 .topArea .ttlArea dt {
      top: 20%; }
    main #section5 .topArea .ttlArea dd.jp {
      top: -3%; }
main #section6 {
  padding-top: 10%; }
  main #section6 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section6 .topArea .ttlArea dd.jp {
      top: -3%; }
main #section7 {
  padding-top: 15%;
  margin-bottom: 10%;
  background: linear-gradient(to bottom, #fff, #fff 5%, #e1fff8 5%, #e1fff8 68%, #fff 68%, #fff); }
  main #section7 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section7 .topArea .pht {
      margin-left: 0px; }
      main #section7 .topArea .pht div div div div {
        margin-right: 5%; }
    main #section7 .topArea .ttlArea dt {
      top: 40%; }
    main #section7 .topArea .ttlArea dd.jp {
      top: -3%; }
main #section8 {
  padding-top: 10%;
  background: #e1fff8; }
  main #section8 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section8 .topArea .pht {
      border: 2px solid #000;
      margin: 0 8%; }
    main #section8 .topArea .pickup {
      position: absolute;
      top: 90%;
      left: 0%;
      width: 100px;
      z-index: 2; }
    main #section8 .topArea .slick-slide img {
      display: inline-block; }
    main #section8 .topArea .ttlArea dt {
      top: 35%; }
    main #section8 .topArea .ttlArea dd.jp {
      top: -5%;
      left: 15%; }
main #section9 {
  padding-top: 10%; }
  main #section9 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section9 .topArea .ttlArea dt {
      top: 40%; }
    main #section9 .topArea .ttlArea dd.jp {
      top: 20%;
      z-index: 1000; }
  main #section9 .sdArea {
    padding-top: 3%;
    background: #e1fff8;
    padding-bottom: 0; }
    main #section9 .sdArea .pickup {
      top: 70%; }
    main #section9 .sdArea .pht {
      margin: 0 auto; }
  main #section9 .txtWarp {
    background: #e1fff8; }
  main #section9 .txtArea {
    padding-bottom: 0; }
    main #section9 .txtArea p {
      margin-bottom: 30px; }
  main #section9 .linkArea {
    margin-bottom: 5%; }
  main #section9 .fdpht {
    background: #e1fff8; }
    main #section9 .fdpht img {
      width: 480px; }
main #section10 {
  padding-top: 10%;
  margin-bottom: 10%; }
  main #section10 .topArea {
    width: 600px;
    margin: 0 auto; }
    main #section10 .topArea .ttlArea dt {
      top: 40%; }
    main #section10 .topArea .ttlArea dd.jp {
      top: -3%; }
  main #section10 .sdArea {
    padding-top: 3%;
    background: #fff; }
    main #section10 .sdArea .pht {
      margin: 0 auto; }
main #btwn {
  background: #e1fff8;
  padding: 1% 0;
  margin-bottom: 5%;
  overflow: hidden; }
