/* ==================== main ==================== */
#main {
  background: #fab42d; }

section .h2_title {
  margin-bottom: 2.0rem;
  text-align: center; }
  section .h2_title h2 {
    display: inline-block;
    padding: 0.25rem 2.0rem;
    border-radius: 1.0rem;
    font-weight: bold; }
    section .h2_title h2.color1 {
      background: #fab42d; }
    section .h2_title h2.color2 {
      background: #ffffff; }
    @media screen and (min-width: 768px) {
      section .h2_title h2 {
        font-size: 1.125rem; } }
    @media screen and (min-width: 992px) {
      section .h2_title h2 {
        font-size: 1.25rem;
        border-radius: 2.5rem; } }

/* mv_section */
.mv_section {
  position: relative; }
  .mv_section .curve path {
    fill: #fab42d; }
  .mv_section .mv_container {
    position: relative; }
  .mv_section .pv_sp {
    display: block;
    width: 100%; }
    @media screen and (min-width: 768px) {
      .mv_section .pv_sp {
        display: none; } }
  .mv_section .pv_pc {
    display: none;
    width: 100%; }
    @media screen and (min-width: 768px) {
      .mv_section .pv_pc {
        display: block; } }
  .mv_section .article {
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    .mv_section .article h1 {
      margin-bottom: 1.0rem;
      font-weight: bold;
      text-align: center;
      color: #ffffff; }
      @media screen and (min-width: 428px) {
        .mv_section .article h1 {
          margin-bottom: 2.0rem;
          font-size: 1.25rem; } }
      @media screen and (min-width: 768px) {
        .mv_section .article h1 {
          margin-bottom: 3.0rem;
          font-size: 1.5rem; } }
      @media screen and (min-width: 992px) {
        .mv_section .article h1 {
          font-size: 2.0rem; } }
      @media screen and (min-width: 1200px) {
        .mv_section .article h1 {
          font-size: 2.5rem; } }
      @media screen and (min-width: 1440px) {
        .mv_section .article h1 {
          font-size: 3.0rem; } }
      @media screen and (min-width: 1600px) {
        .mv_section .article h1 {
          font-size: 3.5rem; } }
    .mv_section .article span {
      display: inline-block;
      margin: 0 0.25rem; }
      @media screen and (min-width: 768px) {
        .mv_section .article span {
          margin: 0 0.5rem; } }
  .mv_section .link {
    display: flex;
    flex-direction: column;
    align-items: center; }
    @media screen and (min-width: 768px) {
      .mv_section .link {
        flex-direction: row;
        justify-content: center; } }
    .mv_section .link a {
      display: inline-block;
      width: 12.5rem;
      margin-bottom: 1.0rem;
      padding: 0.5rem 0;
      background: rgba(0, 0, 0, 0.25);
      border: 0.1rem solid #ffffff;
      border-radius: 0.5rem;
      font-size: 0.875rem;
      font-weight: bold;
      text-align: center;
      color: #ffffff;
      transition-duration: 0.5s; }
      .mv_section .link a:hover {
        background: #ffffff;
        color: #404040; }
      .mv_section .link a:last-child {
        margin: 0; }
      @media screen and (min-width: 768px) {
        .mv_section .link a {
          margin: 0 1.0rem; }
          .mv_section .link a:last-child {
            margin: 0 1.0rem; } }
      @media screen and (min-width: 992px) {
        .mv_section .link a {
          width: 15.0rem;
          margin: 0 2.0rem;
          padding: 1.0rem 0;
          font-size: 1.0rem; }
          .mv_section .link a:last-child {
            margin: 0 2.0rem; } }
    .mv_section .link i {
      margin-left: 1.0rem;
      font-size: 1.125rem; }

/* lead_section */
.lead_section {
  padding: 3.0rem 0;
  position: relative; }
  .lead_section .lead_container {
    max-width: 33.75rem;
    margin: 0 auto; }
    .lead_section .lead_container h2 {
      margin-bottom: 2.0rem;
      font-size: 1.125rem;
      font-weight: bold;
      text-align: center; }
      @media screen and (min-width: 768px) {
        .lead_section .lead_container h2 {
          font-size: 1.25rem; } }
      @media screen and (min-width: 992px) {
        .lead_section .lead_container h2 {
          font-size: 1.5rem; } }
      @media screen and (min-width: 576px) {
        .lead_section .lead_container h2 br {
          display: none; } }
    .lead_section .lead_container p {
      font-size: 0.875rem;
      text-align: center;
      line-height: 1.75; }
      @media screen and (min-width: 768px) {
        .lead_section .lead_container p {
          font-size: 1.0rem;
          line-height: 2.0; } }
      @media screen and (min-width: 992px) {
        .lead_section .lead_container p {
          font-size: 1.25rem; } }

/* reason_section */
.reason_section {
  padding: 3.0rem 0 2.5rem;
  background: #ffffff;
  position: relative; }
  @media screen and (min-width: 768px) {
    .reason_section {
      padding-top: 5.0rem; } }
  @media screen and (min-width: 992px) {
    .reason_section {
      padding-top: 7.5rem; } }
  @media screen and (min-width: 1440px) {
    .reason_section {
      padding-top: 10.0rem; } }
  @media screen and (min-width: 1920px) {
    .reason_section {
      padding-top: 12.5rem; } }
  .reason_section .curve path {
    fill: #fab42d; }
  .reason_section .reason_inner h3 {
    margin-bottom: 1.0rem;
    font-weight: bold;
    text-align: center; }
    @media screen and (min-width: 992px) {
      .reason_section .reason_inner h3 {
        font-size: 1.125rem; } }
  .reason_section .reason_inner img {
    display: block;
    margin-bottom: 1.0rem; }
  .reason_section .reason_inner p {
    font-size: 0.875rem; }
    @media screen and (min-width: 992px) {
      .reason_section .reason_inner p {
        font-size: 1.0rem; } }

/* feature_section */
.feature_section {
  padding: 2.5rem 0 3.0rem;
  background: #ffffff;
  position: relative; }
  @media screen and (min-width: 768px) {
    .feature_section {
      padding-bottom: 5.0rem; } }
  @media screen and (min-width: 992px) {
    .feature_section {
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 1440px) {
    .feature_section {
      padding-bottom: 10.0rem; } }
  @media screen and (min-width: 1920px) {
    .feature_section {
      padding-bottom: 12.5rem; } }
  .feature_section .h2_title h2 {
    letter-spacing: 1.0rem;
    text-indent: 1.0rem; }
  .feature_section .feature_container img {
    image-rendering: -webkit-optimize-contrast; }
  .feature_section .feature_container a img:hover {
    opacity: 0.8; }
  .feature_section .feature_inner {
    display: block; }
  .feature_section .curve path {
    fill: #fcd996; }

/* lineup_section */
.lineup_section {
  padding: 3.0rem 0 2.5rem;
  background: #fcd996;
  position: relative; }
  @media screen and (min-width: 768px) {
    .lineup_section {
      padding-top: 5.0rem; } }
  .lineup_section .lineup_inner {
    display: block;
    height: 100%;
    transition-duration: 0.5s; }
    .lineup_section .lineup_inner:hover {
      transform: translateY(-0.5rem);
      box-shadow: 0.25rem 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.5); }
      .lineup_section .lineup_inner:hover .title i {
        right: 0; }
    .lineup_section .lineup_inner.paradise {
      background: #e86345; }
    .lineup_section .lineup_inner.paper {
      background: #e69100; }
    .lineup_section .lineup_inner.race {
      background: #7e73ff; }
    .lineup_section .lineup_inner.sand {
      background: #6bd149; }
    .lineup_section .lineup_inner.bubble {
      background: #4eaeff; }
    .lineup_section .lineup_inner.touchpalette {
      background: #FC9095; }
    .lineup_section .lineup_inner.sdgs {
      background: #7dd1fd; }
    .lineup_section .lineup_inner.arch {
      background: #4258d8; }
    .lineup_section .lineup_inner.meiro {
      background: #ffd93e; }
    .lineup_section .lineup_inner.tanken {
      background: #007b43; }
    .lineup_section .lineup_inner.mogura {
      background: #856553; }
    .lineup_section .lineup_inner.artlab {
      background: #13ca91; }
    .lineup_section .lineup_inner.koma {
      background: #00a1ff; }
  .lineup_section .lineup_contents {
    padding: 1.0rem; }
    .lineup_section .lineup_contents .article {
      margin-bottom: 1.0rem;
      padding-bottom: 1.0rem;
      border-bottom: 0.0625rem dashed #ffffff; }
    .lineup_section .lineup_contents .detail {
      margin-bottom: 1.0rem;
      font-size: 0.875rem;
      text-align: center;
      color: #ffffff; }
    .lineup_section .lineup_contents .title {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative; }
      .lineup_section .lineup_contents .title p {
        font-size: 1.125rem;
        font-weight: bold;
        text-align: center;
        color: #ffffff;
        line-height: 1.0;
        vertical-align: middle; }
      .lineup_section .lineup_contents .title span {
        font-size: 0.75rem;
        font-weight: normal; }
      .lineup_section .lineup_contents .title i {
        position: absolute;
        top: 50%;
        right: 1.0rem;
        transform: translateY(-50%);
        color: #ffffff;
        line-height: 1.0;
        transition-duration: 0.5s; }
      .lineup_section .lineup_contents .title .textblack {
        color: #404040; }
    .lineup_section .lineup_contents .hashtag span {
      display: inline-block;
      margin: 0 0.5rem 0.5rem 0;
      padding: 0.125rem 0.75rem;
      background: #ffffff;
      border: 0.0625rem solid #404040;
      border-radius: 1.0rem;
      font-size: 0.75rem;
      color: #404040; }
      .lineup_section .lineup_contents .hashtag span:last-child {
        margin: 0; }
    .lineup_section .lineup_contents .textblack {
      color: #404040; }

/* example_section */
.example_section {
  padding: 2.5rem 0 3.0rem;
  background: #fcd996;
  position: relative; }
  @media screen and (min-width: 768px) {
    .example_section {
      padding: 2.5rem 0 5.0rem; } }
  .example_section .row {
    margin-bottom: 3.0rem; }
    @media screen and (min-width: 992px) {
      .example_section .row {
        margin-bottom: 5.0rem; } }
  .example_section .example_inner {
    height: 100%;
    background: #ffffff; }
  .example_section .example_contents {
    padding: 1.0rem; }
    .example_section .example_contents .title {
      margin-bottom: 1.0rem;
      font-size: 1.125rem;
      font-weight: bold; }
    .example_section .example_contents .detail {
      margin-bottom: 1.0rem;
      font-size: 0.875rem; }
      .example_section .example_contents .detail span {
        font-size: 0.75rem; }
    .example_section .example_contents .category {
      margin-bottom: 1.0rem; }
      .example_section .example_contents .category p {
        display: inline-block;
        padding: 0.25rem 1.0rem;
        font-size: 0.75rem;
        color: #ffffff; }
        .example_section .example_contents .category p.paradise {
          background: #e86345; }
        .example_section .example_contents .category p.paper {
          background: #e69100; }
        .example_section .example_contents .category p.race {
          background: #7e73ff; }
        .example_section .example_contents .category p.sand {
          background: #6bd149; }
        .example_section .example_contents .category p.bubble {
          background: #4eaeff; }
    .example_section .example_contents .link {
      text-align: right; }
      .example_section .example_contents .link a {
        display: inline-block;
        margin-left: auto;
        padding: 0.25rem 1.0rem;
        border: 0.0625rem solid #dc3545;
        font-size: 0.75rem;
        color: #dc3545;
        transition-duration: 0.5s; }
        .example_section .example_contents .link a:hover {
          background: #dc3545;
          color: #ffffff; }
      .example_section .example_contents .link i {
        margin-left: 0.5rem; }
  @media screen and (min-width: 768px) {
    .example_section .download {
      display: flex;
      justify-content: center; } }
  .example_section .download a {
    display: block;
    margin-bottom: 1.0rem;
    padding: 1.0rem 0;
    background: #404040;
    border: 0.0625rem solid #404040;
    border-radius: 0.5rem;
    text-align: center;
    color: #ffffff;
    transition-duration: 0.5s; }
    .example_section .download a:last-child {
      margin: 0; }
    .example_section .download a:hover {
      background: #ffffff;
      color: #404040; }
    @media screen and (min-width: 768px) {
      .example_section .download a {
        width: 15.0rem;
        margin: 0 1.0rem; }
        .example_section .download a:last-child {
          margin: 0 1.0rem; } }
  .example_section .download i {
    margin-left: 1.0rem;
    font-size: 1.125rem; }

/* news_section */
.news_section {
  padding: 3.0rem 0;
  background: #ffffff;
  position: relative; }
  @media screen and (min-width: 768px) {
    .news_section {
      padding: 5.0rem 0; } }
  @media screen and (min-width: 992px) {
    .news_section {
      padding: 7.5rem 0; } }
  @media screen and (min-width: 1440px) {
    .news_section {
      padding: 10.0rem 0; } }
  @media screen and (min-width: 1920px) {
    .news_section {
      padding: 12.5rem 0; } }
  .news_section .curve.top path {
    fill: #fcd996; }
  .news_section .curve.bottom path {
    fill: #fab42d; }
  .news_section .news_inner {
    max-width: 45.0rem;
    margin: 0 auto; }
    .news_section .news_inner li {
      margin-bottom: 0.5rem;
      padding-bottom: 0.5rem;
      border-bottom: 0.0625rem solid #7f7f7f; }
      .news_section .news_inner li:first-child {
        padding-top: 0.5rem;
        border-top: 0.0625rem solid #7f7f7f; }
      .news_section .news_inner li:last-child {
        margin: 0; }
      @media screen and (min-width: 768px) {
        .news_section .news_inner li {
          display: flex;
          align-items: center; } }
      @media screen and (min-width: 992px) {
        .news_section .news_inner li {
          margin-bottom: 1.0rem;
          padding-bottom: 1.0rem; }
          .news_section .news_inner li:first-child {
            padding-top: 1.0rem; } }
    .news_section .news_inner .date {
      margin-bottom: 0.25rem;
      font-size: 0.75rem;
      color: #404040; }
      @media screen and (min-width: 768px) {
        .news_section .news_inner .date {
          width: 20%;
          margin: 0;
          text-align: center; } }
      @media screen and (min-width: 992px) {
        .news_section .news_inner .date {
          font-size: 0.875rem; } }
    .news_section .news_inner .title {
      font-size: 0.75rem;
      color: #e6007d; }
      .news_section .news_inner .title:hover {
        text-decoration: underline; }
      @media screen and (min-width: 768px) {
        .news_section .news_inner .title {
          width: 80%; } }
      @media screen and (min-width: 992px) {
        .news_section .news_inner .title {
          font-size: 0.875rem; } }

/* ==================== /main ==================== */
/* ==================== /footer ==================== */
/* company_section */
.company_section .curve.top path {
  fill: #fab42d; }
.company_section .company_container h2 {
  background: #fab42d; }

/* ==================== /footer ==================== */
