@charset "UTF-8";

@media screen and (max-width: 768px) {
  body {
    padding-top: 19vw; }

/*
 * header
 */

#header {
padding: 2vw 3vw;
position: fixed;
left: 0;
top: 0;
width: calc(100% - 6vw);
z-index: 30; } 
#logo {
max-width: 100%; }
#logo a {
display: block;
height: 100%; }
#logo img {
max-height: 12.5vw; } 
   /* #nav-toggle {
      display: block;
      position: fixed;
      top: 4vw;
      right: 4vw;
      height: 32px;
      cursor: pointer; }
      #nav-toggle > div {
        position: relative;
        width: 36px; }
      #nav-toggle span {
        width: 100%;
        height: 1px;
        left: 0;
        display: block;
        background: #333;
        position: absolute;
        transition: transform 0.6s ease-in-out, top 0.5s ease; }
        #nav-toggle span:nth-child(1) {
          top: 0; }
        #nav-toggle span:nth-child(2) {
          top: 14px; }
        #nav-toggle span:nth-child(3) {
          top: 28px; }
      #nav-toggle:hover span:nth-child(1) {
        top: 4px; }
      #nav-toggle:hover span:nth-child(3) {
        top: 23px; } 
	#nav-toggle,
    #nav-toggle span {
      display: inline-block;
      transition: all 200ms;
      box-sizing: border-box; } */

#nav-toggle {
  position: relative;
  width: 8vw;
  height: 6vw; margin-left: auto; margin-right: 2vw;}
  #nav-toggle span {
    background-color: #333;
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.69vw; }
    #nav-toggle span:nth-of-type(1) {
      top: 0; }
    #nav-toggle span:nth-of-type(2) {
      top: 45%; }
    #nav-toggle span:nth-of-type(3) {
      bottom: 0; }
 #header.open #nav-toggle span:nth-of-type(1) {
    transform: translateY(2.655vw) rotate(-45deg); }
 #header.open #nav-toggle span:nth-of-type(2) {
    opacity: 0; }
 #header.open #nav-toggle span:nth-of-type(3) {
    transform: translateY(-2.655vw) rotate(45deg); }
    #gnav_upper {
      display: none; } 
    #gnav_lower {
      background-color: #fff;
      border-top-color: #c42a36;
      border-top-style: solid;
      border-top-width: 2px;
      box-sizing: border-box;
      display: block;
      padding: 5vw 5vw;
      position: fixed;
      left: 100%;
      top: 16vw;
      transition: all 300ms;
      width: 100%; }
      #gnav_lower li {
        border-bottom-color: #eb9c48;
        border-bottom-style: solid;
        border-bottom-width: 1px;
        font-size: 4vw;
        margin-left: 0; }
        #gnav_lower li a {
          border-bottom: none;
          line-height: 2.5; } 
  .open #gnav_lower {
    left: 0; } 

/*
 * footer
 */

    #footer {
      background-image: none;
      background-color: #f5f5f5; } 
      #footer .inner {
        max-width: 90vw;
        padding-bottom: 0; }
    #footer dl {
      display: block; width: 50%; } 
    #footer .logo {
      display: flex;
      justify-content: space-around;
      width: 100%; } 

      #footer dt {
        font-size: 1.2rem; }
      #footer dd {
        font-size: 0.8rem; } 
	  #footer dt {font-size: 4vw;}
	  #footer dd {font-size: 3vw;}
    #footer_nav_lower {
      flex-wrap: wrap;
      justify-content: center;
      margin-left: auto;
      margin-right: auto;
      width: 80%; }
      #footer_nav_lower li {
        font-size: 2.7vw; } 
/*
 * second
 */

    .content {
      max-width: 90vw; }
        .content h2 strong {
          font-size: 5vw; } 
        .content h2 em {
          font-size: 4vw; } 
      .btn_link.L {
        font-size: 1.6rem; } 
    .top #mainvisual {
      background-position: center top;
      padding-top: 46.15%;
      padding-bottom: 0; } 
      .top #mainvisual strong {
        display: block;
        position: relative;
        right: auto;
        top: auto; } 
        .top #mainvisual strong .tL {
          font-size: 2rem; } 
        .top #mainvisual strong span {
          font-size: 1.3rem; } 
        .top #mainvisual strong .num {
          font-size: 2rem; } 
        .top #mainvisual strong i {
          font-size: 0.9rem; } 
    .top .txtC {
      font-size: 2.9vw; } 
    #point_list {
      display: block; }
      #point_list li {
        max-width: 100%; } 
    #point_list {
      margin-left: auto;
      margin-right: auto;
      width: 90%; }
      #point_list img {
        display: block; } 
    #select_box {
      display: block; } 
      #select_box .first {
        padding: 4vw;
        width: 100%; } 
      #select_box .member {
        padding: 4vw;
        width: 100%; } 
	
      #select_box a {
        font-size: 1.2rem; } 
    .voices_list {
      display: block; } 
      .voices_list li {
        margin: 0 auto 20vw;
        width: 80%; } 
    #info_box {
      display: block;
      max-width: 90vw; } 
    #top_info {
      max-width: 100%; } 
    #top_column {
      max-width: 100%; } 
      #top_column h3 {
        background-size: auto 80%; } 
}
