@charset "UTF-8";
/* CSS Document */
/*def end*/
/*share*/
::selection {
  background: rgba(3, 22, 40, 0.6);
  /* Safari */
  color: white; }

::-moz-selection {
  background: rgba(3, 22, 40, 0.6);
  /* Firefox */
  color: white; }

html, body {
  height: 100%; }

*, *::before, *::after {
  box-sizing: border-box; }

a {
  text-decoration: none;
  color: black; }
  a:hover {
    text-decoration: underline; }

li {
  list-style-type: none; }

dl, dt, dd, ul, li {
  margin: 0;
  padding: 0; }

h1, h2, h3, h4 {
  padding: 0;
  margin: 0;
  font-size: 1em; }

body {
  font-family: "Open Sans", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Meiryo UI", "Meiryo", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ ゴシック", "MS Gothic", sans-serif;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-size: .9em; }

.pc {
  display: block; }

.sp {
  display: none; }

@media all and (max-width: 768px) {
  .pc {
    display: none; }

  .sp {
    display: block; } }
.opening {
  background: #031628;
  color: white; }

#wrapper {
  max-width: 950px;
  width: 90%;
  margin: 0 auto; }

h1#global_logo {
  position: fixed;
  top: 1.5em;
  left: 3%;
  z-index: 101; }

header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 110px;
  overflow: hidden; }
  @media all and (max-width: 768px) {
    header {
      visibility: hidden;
      opacity: 0;
      text-align: center;
      background: rgba(255, 255, 255, 0.95);
      height: 100%;
      width: 100%;
      z-index: 200;
      -webkit-transition: all 0.5s ease-in-out;
      -moz-transition: all 0.5s ease-in-out;
      -ms-transition: all 0.5s ease-in-out;
      -o-transition: all 0.5s ease-in-out;
      transition: all 0.5s ease-in-out; }
      header.is-visible_smp {
        visibility: visible;
        opacity: 1; } }

#nav_wrapper {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%; }

#global_header {
  overflow: hidden;
  background: rgba(0, 0, 255, 0.8);
  height: 60px; }
  @media all and (max-width: 768px) {
    #global_header {
      height: auto; } }
  #global_header #global_nav {
    float: right;
    padding: 1.5em 0;
    padding-right: 3%; }
    #global_header #global_nav li {
      display: inline;
      font-weight: bold;
      margin-left: 1em; }
      #global_header #global_nav li a {
        color: white; }
      #global_header #global_nav li.sosnet {
        display: none; }
    @media all and (max-width: 768px) {
      #global_header #global_nav {
        float: none; }
        #global_header #global_nav li {
          display: block;
          margin-left: 0;
          margin-bottom: .5em; }
          #global_header #global_nav li:last-child {
            margin-bottom: 0; }
          #global_header #global_nav li.sos2017 {
            display: none; }
          #global_header #global_nav li.sosnet {
            display: block;
            margin-bottom: 1em; } }

#sub_header {
  overflow: hidden;
  background: rgba(245, 136, 0, 0.7);
  background: rgba(0, 0, 0, 0.9);
  padding: 1.1em 0;
  height: 50px;
  font-weight: bold; }
  @media all and (max-width: 768px) {
    #sub_header {
      height: auto; } }
  #sub_header #title {
    float: left;
    padding-left: 3%;
    color: white; }
  #sub_header #sub_nav {
    padding-right: 3%;
    float: right; }
    #sub_header #sub_nav li {
      margin-left: 1em;
      display: inline; }
      #sub_header #sub_nav li a {
        color: white; }
  @media all and (max-width: 768px) {
    #sub_header #title {
      float: none;
      padding-left: 0;
      margin-bottom: 1em; }
      #sub_header #title span {
        display: none; }
    #sub_header #sub_nav {
      float: none;
      padding-right: 0; }
      #sub_header #sub_nav li {
        display: block;
        margin-left: 0;
        margin-bottom: .5em; }
        #sub_header #sub_nav li:last-child {
          margin-bottom: 0; } }

.close_nav {
  display: none; }
  @media all and (max-width: 768px) {
    .close_nav {
      display: block;
      text-align: center;
      padding: 1em;
      font-weight: bold;
      text-transform: uppercase; } }

#nav_btn {
  display: none;
  top: 0;
  position: fixed;
  z-index: 100;
  right: 0;
  font-size: 1.2em; }
  @media all and (max-width: 768px) {
    #nav_btn {
      display: block;
      padding: 3.2vh; } }

.home_content.is-visible_smp {
  -webkit-filter: blur(10px);
  filter: blur(10px); }

.content {
  max-width: 1000px;
  width: 95%;
  margin: 0 auto;
  padding-bottom: 3em;
  padding-top: 120px; }
  @media all and (max-width: 640px) {
    .content {
      width: 90%;
      padding-top: 30px; } }
  .content.is-visible_smp {
    -webkit-filter: blur(10px);
    filter: blur(10px); }
  .content h2 {
    font-size: 2em;
    margin-bottom: 1.5em; }
  .content section iframe #js-categorizeService, .content section iframe #js-categorizeResorce, .content section iframe #reserve_form h1, .content section iframe .is-explanation:nth-child(1) {
    display: none; }

.outer_content {
  margin-top: 150px; }
  @media all and (max-width: 640px) {
    .outer_content {
      margin-top: 80px; } }
  .outer_content .content {
    max-width: 1050px;
    width: 95%;
    margin: 0 auto;
    padding: 0 40px 3em;
    background: rgba(0, 0, 0, 0.8);
    color: white; }
    @media all and (max-width: 640px) {
      .outer_content .content {
        padding: 0 15px 3em; } }
  .outer_content#about_outer {
    background: url(../img/about.jpg) center center no-repeat;
    background-size: cover; }
  .outer_content#outline_outer {
    background: url(../img/outline.jpg) center center no-repeat;
    background-size: cover; }
  .outer_content #page_title_wrapper {
    border-bottom: thin solid white; }
  .outer_content .content_title_wrapper {
    border-bottom: thin solid white; }
  .outer_content section {
    border-bottom: solid thin white; }
    .outer_content section:last-child {
      border-bottom: none; }

/*
.content_subtitle {
    border-bottom: thin solid black;
    font-weight: bold;
    font-size: 1.4em;
    padding: 3.5em 0;

}
*/
.content_title_wrapper {
  border-bottom: 3px solid black;
  border-top: 3px solid black;
  font-weight: bold;
  overflow: hidden;
  padding: 2em 0;
  padding-left: .5em; }
  .content_title_wrapper .content_title {
    font-size: 1.4em;
    float: left; }
  .content_title_wrapper .content_title_content {
    float: right; }
  @media all and (max-width: 640px) {
    .content_title_wrapper .content_title_content {
      margin-top: 5vh; }
    .content_title_wrapper .content_title, .content_title_wrapper .content_title_content {
      float: none; } }
  .content_title_wrapper .content_title_nav {
    overflow: hidden; }
    .content_title_wrapper .content_title_nav li {
      float: left;
      margin-right: .5em; }
      .content_title_wrapper .content_title_nav li:after {
        margin-left: .5em;
        content: "|"; }
      .content_title_wrapper .content_title_nav li:last-child:after {
        content: ""; }

#page_title_wrapper {
  border-bottom: thin solid black;
  font-weight: bold;
  overflow: hidden;
  padding: 3.5em 0; }
  #page_title_wrapper #page_title {
    font-size: 1.4em;
    float: left; }
  #page_title_wrapper #page_title_content {
    float: right; }
  @media all and (max-width: 640px) {
    #page_title_wrapper #page_title_content {
      margin-top: 5vh; }
    #page_title_wrapper #page_title, #page_title_wrapper #page_title_content {
      float: none; } }
  #page_title_wrapper .page_title_nav {
    overflow: hidden; }
    #page_title_wrapper .page_title_nav li {
      float: left;
      margin-right: .5em; }
      #page_title_wrapper .page_title_nav li:after {
        margin-left: .5em;
        content: "|"; }
      #page_title_wrapper .page_title_nav li:last-child:after {
        content: ""; }

section {
  overflow: hidden;
  padding: 3.5em 0;
  min-width: 1000px;
  border-bottom: solid thin black; }
  section p {
    line-height: 1.5em;
    margin-bottom: 2em; }
    section p.sign {
      margin-bottom: 6em;
      text-align: right; }
  section > p {
    width: 70%; }
  section:last-child {
    border-bottom: none;
    padding-bottom: 0; }
  section img {
    max-width: 100%; }
  section .section_title {
    font-size: 1.4em;
    font-weight: bold;
    float: left;
    width: 30%; }
    section .section_title img {
      width: 90%; }
  section .section_content {
    float: left;
    width: 70%; }
  section .exhi_title {
    font-size: 1.4em;
    font-weight: bold;
    margin-bottom: .2em; }
  section .exhi_artist {
    margin-bottom: 1em; }
  section .exhi_text {
    margin-bottom: 1em; }
  section a {
    text-decoration: underline; }
    section a:hover {
      text-decoration: none; }
  section .caption {
    font-size: .9em;
    margin-bottom: 1em; }
  section span.exhi_caption {
    display: block;
    font-size: .7em; }
  @media all and (max-width: 640px) {
    section {
      min-width: auto; }
      section > p {
        width: 100%; }
      section .section_title {
        float: none;
        width: 100%;
        margin-bottom: 5vh; }
        section .section_title img {
          width: 100%; }
      section .section_content {
        float: none;
        width: 100%; }
      section .exhi_text {
        width: 100%; } }

.event_wrapper {
  border-bottom: solid thin black;
  padding: 2.5em 0; }
  .event_wrapper:first-child {
    padding-top: 0; }
  .event_wrapper:last-child {
    border-bottom: none;
    padding-bottom: 0; }
  .event_wrapper .event_title {
    font-size: 1.4em;
    font-weight: bold;
    margin-bottom: .5em; }
  .event_wrapper .event_description {
    margin-bottom: 1em; }

ul.photo_list li {
  float: left;
  width: 24%;
  height: auto;
  padding-top: 15%;
  margin-left: 1%;
  margin-bottom: 1em;
  overflow: hidden;
  position: relative; }
  ul.photo_list li img {
    width: 100%;
    vertical-align: bottom;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto; }

dl.def_list {
  overflow: hidden; }
  dl.def_list dt {
    float: left;
    clear: both;
    max-width: 65px;
    width: 10%; }
    dl.def_list dt:after {
      display: block;
      float: right;
      margin-right: .5em;
      content: "|"; }
    dl.def_list dt.notice:after {
      content: ""; }
  dl.def_list dd {
    width: 90%;
    margin-bottom: 1vh;
    float: left;
    overflow: hidden; }
    dl.def_list dd.notice {
      font-size: .9em; }
  dl.def_list.long dt {
    max-width: 110px;
    width: 19%;
    margin-right: 1%; }
  dl.def_list.long dd {
    width: 80%; }
  @media all and (max-width: 640px) {
    dl.def_list dt {
      float: none;
      width: 100%;
      font-weight: bold;
      margin-bottom: 1vh; }
      dl.def_list dt:after {
        margin-left: 0;
        content: ""; }
    dl.def_list dd {
      width: 100%;
      margin-bottom: 3vh; }
      dl.def_list dd:last-child {
        margin-bottom: 0; }
    dl.def_list.long dt {
      max-width: none;
      width: 100%;
      margin-right: 0; }
    dl.def_list.long dd {
      width: 100%; } }

#event dl.def_list dt, #tour dl.def_list dt {
  max-width: 110px;
  line-height: 1.5;
  width: 19%;
  margin-right: 1%; }
#event dl.def_list dd, #tour dl.def_list dd {
  width: 80%;
  line-height: 1.5; }
@media all and (max-width: 640px) {
  #event dl.def_list dt, #tour dl.def_list dt {
    max-width: none;
    width: 100%;
    margin-right: 0; }
  #event dl.def_list dd, #tour dl.def_list dd {
    width: 100%; } }

.wrapper_2col {
  overflow: hidden; }
  .wrapper_2col ._left {
    float: left;
    width: 49%; }
  .wrapper_2col ._right {
    float: right;
    width: 49%; }
  @media all and (max-width: 640px) {
    .wrapper_2col ._left, .wrapper_2col ._right {
      float: none;
      width: 100%; } }

.sort_wrapper {
  overflow: hidden; }
  .sort_wrapper dl {
    text-transform: uppercase;
    overflow: hidden;
    float: left;
    margin-left: 1em; }
    .sort_wrapper dl dt {
      float: left; }
      .sort_wrapper dl dt:after {
        content: ":"; }
    .sort_wrapper dl dd {
      float: left; }
      .sort_wrapper dl dd input {
        border: none;
        border-bottom: thin black solid;
        margin-left: 5px;
        padding: 3px;
        font-size: 16px;
        background: #fafafa; }
        @media all and (max-width: 640px) {
          .sort_wrapper dl dd input {
            border-radius: 0px;
            margin-left: 0;
            margin-top: 5px; } }
        .sort_wrapper dl dd input:focus {
          outline: none; }
      .sort_wrapper dl dd ul li {
        float: left;
        margin-left: .5em;
        cursor: pointer; }
        .sort_wrapper dl dd ul li:hover, .sort_wrapper dl dd ul li.active {
          text-decoration: underline; }
    @media all and (max-width: 640px) {
      .sort_wrapper dl {
        margin-left: 0; }
        .sort_wrapper dl:nth-child(2) {
          margin-top: 1em; } }

#top {
  position: relative;
  width: 100%;
  padding-top: 110px;
  margin-bottom: 60px;
background-color:#0000ff;}
  @media all and (max-width: 640px) {
    #top {
      padding-top: 60px; } }
  #top #home_bg {
    position: relative;
    width: 100%;
    height: 80vh;
    background: url("../img/2024top_pc.jpg") right bottom no-repeat;
    background-size: cover;
background-position: center;}
    @media all and (max-width: 640px) {
      #top #home_bg {
        background: url("../img/2024top.jpg") right bottom no-repeat;
        background-size: cover;
        height: 70vh; } }
  #top #home_catch {
    position: absolute;
    left: 3em;
    top: 25%;
    width: 90%; }
    #top #home_catch img {
      max-width: 100%; }
    @media all and (max-width: 640px) {
      #top #home_catch {
        width: 86%;
        left: 7%;
        top: 90px; } }
  #top #home_text {
    position: relative;
    padding: 40px 30px;
    background: #0000ff; }
    @media all and (max-width: 640px) {
      #top #home_text {
        padding: 30px 30px; } }
  #top #home_logo {
    max-width: 100%; }
  #top dl.def_list {
    font-weight: bold; }
    @media all and (max-width: 640px) {
      #top dl.def_list {
        padding: 0 2% 1em;
        display: none; } }
    #top dl.def_list dt {
      width: auto;
      margin-right: .5em; }
    #top dl.def_list dd {
      width: auto; }

#outline_logo {
  margin-bottom: 3.5em;
margin-right: 2.5em;}
  @media all and (max-width: 640px) {
#outline_logo {
  margin-bottom: 3.5em;
margin-right: 0;} }
#past section .section_title {
  width: 15%; }
#past section .section_content {
  width: 85%; }
@media all and (max-width: 640px) {
  #past section .section_title {
    width: 100%; }
  #past section .section_content {
    width: 100%; } }

#clear_search {
  opacity: .3; }
  #clear_search.active {
    opacity: 1;
    cursor: pointer; }
  @media all and (max-width: 640px) {
    #clear_search {
      opacity: .5;
      background: #f0f0f0;
      padding: 5px; }
      #clear_search.active {
        opacity: 1;
        cursor: pointer; } }

#artist_search_resultnum {
  min-height: 40px;
  width: 100%; }

ul#artist_list li {
  width: 24%;
  float: left;
  margin: 0 .5% 4em;
  cursor: pointer; }
  ul#artist_list li:hover {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px); }
  ul#artist_list li.is-invisible {
    display: none; }
  @media all and (max-width: 640px) {
    ul#artist_list li {
      width: 46%;
      margin: 0 2% 2em; } }

.artist_block {
  overflow: hidden;
  font-size: .9em; }
  .artist_block .ar_num {
    float: left;
    width: 12%;
    height: 30px;
    line-height: 30px;
    margin-right: 2%;
    text-align: center;
    font-weight: bold; }
  .artist_block .ar_name_wrapper {
    width: 86%;
    float: left;
    margin-bottom: .8em; }
  .artist_block .ar_name {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    line-height: 1.2em; }
  .artist_block .ar_stname {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; }
  .artist_block .ar_en {
    font-size: .8em;
    display: none; }
    .artist_block .ar_en:before {
      content: "|"; }
  .artist_block .ar_id, .artist_block .ar_kana {
    display: none; }
  .artist_block .ar_img {
    height: 250px;
    width: 100%;
    position: relative;
    overflow: hidden;
    background: #fafafa; }
    .artist_block .ar_img img {
      position: absolute;
      max-width: 95%;
      width: auto;
      max-height: 95%;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
    @media all and (max-width: 640px) {
      .artist_block .ar_img {
        height: 100px; } }

.studio_link {
  text-decoration: underline;
  cursor: pointer; }
  .studio_link:hover {
    text-decoration: none; }

#sos_studio_list {
  width: 100%;
  overflow: hidden; }
  #sos_studio_list li {
    width: 24%;
    margin: 0 .5% 2em;
    float: left; }
    #sos_studio_list li:hover {
      -webkit-transform: translateY(-5px);
      -ms-transform: translateY(-5px);
      transform: translateY(-5px); }
    #sos_studio_list li .studio_block .st_img {
      width: 100%;
      height: 150px;
      clear: both; }
    #sos_studio_list li .studio_block .st_num {
      float: left;
      width: 12%;
      height: 30px;
      line-height: 30px;
      margin-right: 2%;
      text-align: center;
      font-weight: bold;
      padding: 0; }
    #sos_studio_list li .studio_block .st_name {
      margin-bottom: .5em;
      width: 86%;
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis;
      line-height: 1.2em; }
    #sos_studio_list li .studio_block .st_ja {
      float: left;
      margin-bottom: .8em; }
    @media all and (max-width: 640px) {
      #sos_studio_list li {
        width: 46%;
        margin: 0 2% 2em; }
        #sos_studio_list li .studio_block .st_img {
          height: 100px; }
        #sos_studio_list li .studio_block .st_name {
          width: 86%; } }

div#studio_list_wrapper {
  width: 741px;
  float: left;}
  @media all and (max-width: 768px) {
    div#studio_list_wrapper {
      width: 100%;
      float: none; } }

.studiodetail_map {
  width: 100%;
  height: 100%; }

div#studio_map {
  width: 100%;
  height: 715px;
  float: right; }
  div#studio_map #map_content {
    width: 100%;
    height: 100%; }
  div#studio_map iframe {
    height: 100%;
    width: 100%;
    border: 0; }
  @media all and (max-width: 768px) {
    div#studio_map {
      width: 100%;
      float: none;
      height: 420px; } }

div#studio_caption {
  clear: both;
  padding: .2em .5em;
  font-size: .9em; }

ul#studio_header {
  width: 741px; }
  ul#studio_header li {
    font-weight: bold;
    margin-bottom: 1px;
    height: 40px; }
  @media all and (max-width: 768px) {
    ul#studio_header {
      width: 100%; } }

ul#studio_list {
  width: 741px;

margin-bottom: 50px;
}
  ul#studio_list li {
    font-weight: bold;
    margin-bottom: 1px;
    overflow: hidden;
    height: 26px; }
    ul#studio_list li li {
      line-height: 26px; }
  ul#studio_list > li:nth-child(odd) {
    background: #F7F7F7; }
  ul#studio_list .studio_block {
    cursor: pointer; }
    ul#studio_list .studio_block .st_name {
      width: 195px;
      text-decoration: underline;
font-size:12px;}
      ul#studio_list .studio_block .st_name:hover {
        text-decoration: none; }
      ul#studio_list .studio_block .st_name span.studiocaption {
        display: inline;
        color: gray;
        font-size: .8em; }
        @media all and (max-width: 640px) {
          ul#studio_list .studio_block .st_name span.studiocaption {
            display: block;
            padding-left: 0; } }
  ul#studio_list #st99 .studio_block {
    cursor: default; }
    ul#studio_list #st99 .studio_block:hover * {
      text-decoration: none; }
  ul#studio_list span {
    display: none; }
  @media all and (max-width: 768px) {
    ul#studio_list {
      width: 100%; }
      ul#studio_list li {
        height: auto;
        margin-bottom: 1em;
        padding-bottom: .7em;
        padding-right: 5px; }
      ul#studio_list .studio_block .st_name {
        width: auto; }
        ul#studio_list .studio_block .st_name .st_ja, ul#studio_list .studio_block .st_name .st_en {
          text-decoration: underline; }
      ul#studio_list span {
        padding-top: 4px;
        display: block;
        font-size: .9em;
        font-weight: normal;
        padding-left: 35px; }
        ul#studio_list span:before {
          content: "スタジオ公開日｜"; } }
      @media all and (max-width: 768px) and (max-width: 640px) {
        ul#studio_list span:before {
          font-size: .7em; } }

.studio_block {
  overflow: hidden;
  float: left;
  clear: both;
  width: 230px;
  height: 100%; }
  .studio_block .st_num {
    float: left;
    width: 30px;
    padding-top: 4px;
    padding-left: 5px; }
  .studio_block .st_name {
    float: left;
    padding-top: 4px; }
  .studio_block .st_en {
    font-size: .9em;
    display: none; }
  @media all and (max-width: 768px) {
    .studio_block {
      width: 100%; }
      .studio_block .st_num {
        height: 30px;
        margin-right: 5px;
        padding-top: 0;
        line-height: 30px;
        padding-left: 0;
        text-align: center; } }

.studio_date {
  overflow: hidden;
  float: left;
  border-left: thin solid white; }
  @media all and (max-width: 768px) {
    .studio_date ul {
      display: none; } }
  .studio_date li {
    border-left: thin solid rgba(128, 128, 128, 0.4);
    float: left;
    width: 100px;
    text-align: center; }

.artist_block.c01 .ar_num {
  background: #feef35; }

.artist_block.c02 .ar_num {
  background: #feef35; }

.artist_block.c03 .ar_num {
  background: #f19625; }

.artist_block.c04 .ar_num {
  background: #f19625; }

.artist_block.c05 .ar_num {
  background: #ea6a67; }

.artist_block.c06 .ar_num {
  background: #ea6a67; }

.artist_block.c07 .ar_num {
  background: #e30b20; }

.artist_block.c08 .ar_num {
  background: #e30b20; }

.artist_block.c09 .ar_num {
  background: #e1147f; }

.artist_block.c10 .ar_num {
  background: #e1147f; }

.artist_block.c11 .ar_num {
  background: #5f1f84; }

.artist_block.c12 .ar_num {
  background: #5f1f84; }

.artist_block.c13 .ar_num {
  background: #1e2586; }

.artist_block.c14 .ar_num {
  background: #1e2586; }

.artist_block.c15 .ar_num {
  background: #0f6ab4; }

.artist_block.c16 .ar_num {
  background: #0f6ab4; }

.artist_block.c17 .ar_num {
  background: #218c83; }

.artist_block.c18 .ar_num {
  background: #218c83; }

.artist_block.c19 .ar_num {
  background: #0a6836; }

.artist_block.c20 .ar_num {
  background: #0a6836; }

.artist_block.c21 .ar_num {
  background: #159848; }

.artist_block.c22 .ar_num {
  background: #159848; }

.artist_block.c23 .ar_num {
  background: #b5d042; }

.artist_block.c24 .ar_num {
  background: #b5d042; }

.artist_block.c99 .ar_num {
  background: black; }

#sos_studio_list .studio_block.c01 .st_num {
  background: #feef35; }

#sos_studio_list .studio_block.c02 .st_num {
  background: #feef35; }

#sos_studio_list .studio_block.c03 .st_num {
  background: #f19625; }

#sos_studio_list .studio_block.c04 .st_num {
  background: #f19625; }

#sos_studio_list .studio_block.c05 .st_num {
  background: #ea6a67; }

#sos_studio_list .studio_block.c06 .st_num {
  background: #ea6a67; }

#sos_studio_list .studio_block.c07 .st_num {
  background: #e30b20; }

#sos_studio_list .studio_block.c08 .st_num {
  background: #e30b20; }

#sos_studio_list .studio_block.c09 .st_num {
  background: #e1147f; }

#sos_studio_list .studio_block.c10 .st_num {
  background: #e1147f; }

#sos_studio_list .studio_block.c11 .st_num {
  background: #5f1f84; }

#sos_studio_list .studio_block.c12 .st_num {
  background: #5f1f84; }

#sos_studio_list .studio_block.c13 .st_num {
  background: #1e2586; }

#sos_studio_list .studio_block.c14 .st_num {
  background: #1e2586; }

#sos_studio_list .studio_block.c15 .st_num {
  background: #0f6ab4; }

#sos_studio_list .studio_block.c16 .st_num {
  background: #0f6ab4; }

#sos_studio_list .studio_block.c17 .st_num {
  background: #218c83; }

#sos_studio_list .studio_block.c18 .st_num {
  background: #218c83; }

#sos_studio_list .studio_block.c19 .st_num {
  background: #0a6836; }

#sos_studio_list .studio_block.c20 .st_num {
  background: #0a6836; }

#sos_studio_list .studio_block.c21 .st_num {
  background: #159848; }

#sos_studio_list .studio_block.c22 .st_num {
  background: #159848; }

#sos_studio_list .studio_block.c23 .st_num {
  background: #b5d042; }

#sos_studio_list .studio_block.c24 .st_num {
  background: #b5d042; }

#sos_studio_list .studio_block.c25 .st_num {
  background: #b5d042; }

#sos_studio_list .studio_block.c99 .st_num {
  background: black; }

#sos_studio_list .c01 .st_img {
  background: #F1F1F1 url(../stimg2023/st01_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c02 .st_img {
  background: #F1F1F1 url(../stimg2023/st02_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c03 .st_img {
  background: #F1F1F1 url(../stimg2023/st03_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c04 .st_img {
  background: #F1F1F1 url(../stimg2023/st04_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c05 .st_img {
  background: #F1F1F1 url(../stimg2023/st05_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c06 .st_img {
  background: #F1F1F1 url(../stimg2023/st06_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c07 .st_img {
  background: #F1F1F1 url(../stimg2023/st07_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c08 .st_img {
  background: #F1F1F1 url(../stimg2023/st08_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c09 .st_img {
  background: #F1F1F1 url(../stimg2023/st09_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c10 .st_img {
  background: #F1F1F1 url(../stimg2023/st10_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c11 .st_img {
  background: #F1F1F1 url(../stimg2023/st11_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c12 .st_img {
  background: #F1F1F1 url(../stimg2023/st12_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c13 .st_img {
  background: #F1F1F1 url(../stimg2023/st13_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c14 .st_img {
  background: #F1F1F1 url(../stimg2023/st14_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c15 .st_img {
  background: #F1F1F1 url(../stimg2023/st15_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c16 .st_img {
  background: #F1F1F1 url(../stimg2023/st16_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c17 .st_img {
  background: #F1F1F1 url(../stimg2023/st17_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c18 .st_img {
  background: #F1F1F1 url(../stimg2023/st18_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c19 .st_img {
  background: #F1F1F1 url(../stimg2023/st19_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c20 .st_img {
  background: #F1F1F1 url(../stimg2023/st20_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c21 .st_img {
  background: #F1F1F1 url(../stimg2023/st21_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c22 .st_img {
  background: #F1F1F1 url(../stimg2023/st22_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c23 .st_img {
  background: #F1F1F1 url(../stimg2023/st23_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c24 .st_img {
  background: #F1F1F1 url(../stimg2023/st24_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c25 .st_img {
  background: #F1F1F1 url(../stimg2022/st25_01.jpg) center center no-repeat;
  background-size: contain; }

#sos_studio_list .c99 .st_img {
  background: #F1F1F1 url(../stimg/st99_01.jpg) center center no-repeat;
  background-size: contain; }

#studios .studio_block.c01 {
  border-left: 5px solid #feef35; }

#studios .studio_block.c02 {
  border-left: 5px solid #feef35; }

#studios .studio_block.c03 {
  border-left: 5px solid #f19625; }

#studios .studio_block.c04 {
  border-left: 5px solid #f19625; }

#studios .studio_block.c05 {
  border-left: 5px solid #ea6a67; }

#studios .studio_block.c06 {
  border-left: 5px solid #ea6a67; }

#studios .studio_block.c07 {
  border-left: 5px solid #e30b20; }

#studios .studio_block.c08 {
  border-left: 5px solid #e30b20; }

#studios .studio_block.c09 {
  border-left: 5px solid #e1147f; }

#studios .studio_block.c10 {
  border-left: 5px solid #e1147f; }

#studios .studio_block.c11 {
  border-left: 5px solid #5f1f84; }

#studios .studio_block.c12 {
  border-left: 5px solid #5f1f84; }

#studios .studio_block.c13 {
  border-left: 5px solid #1e2586; }

#studios .studio_block.c14 {
  border-left: 5px solid #1e2586; }

#studios .studio_block.c15 {
  border-left: 5px solid #0f6ab4; }

#studios .studio_block.c16 {
  border-left: 5px solid #0f6ab4; }

#studios .studio_block.c17 {
  border-left: 5px solid #218c83; }

#studios .studio_block.c18 {
  border-left: 5px solid #218c83; }

#studios .studio_block.c19 {
  border-left: 5px solid #0a6836; }

#studios .studio_block.c20 {
  border-left: 5px solid #0a6836; }

#studios .studio_block.c21 {
  border-left: 5px solid #159848; }

#studios .studio_block.c22 {
  border-left: 5px solid #159848; }

#studios .studio_block.c23 {
  border-left: 5px solid #b5d042; }

#studios .studio_block.c24 {
  border-left: 5px solid #b5d042; }

#studios .studio_block.c25 {
  border-left: 5px solid #b5d042; }

#studios .studio_block.c99 {
  border-left: 5px solid black; }
  #studios .studio_block.c99 .st_num {
    color: rgba(255, 255, 255, 0); }

@media all and (max-width: 768px) {
  #studios .studio_block.c01 {
    border-left: none; }

  #studios .studio_block.c02 {
    border-left: none; }

  #studios .studio_block.c03 {
    border-left: none; }

  #studios .studio_block.c04 {
    border-left: none; }

  #studios .studio_block.c05 {
    border-left: none; }

  #studios .studio_block.c06 {
    border-left: none; }

  #studios .studio_block.c07 {
    border-left: none; }

  #studios .studio_block.c08 {
    border-left: none; }

  #studios .studio_block.c09 {
    border-left: none; }

  #studios .studio_block.c10 {
    border-left: none; }

  #studios .studio_block.c11 {
    border-left: none; }

  #studios .studio_block.c12 {
    border-left: none; }

  #studios .studio_block.c13 {
    border-left: none; }

  #studios .studio_block.c14 {
    border-left: none; }

  #studios .studio_block.c15 {
    border-left: none; }

  #studios .studio_block.c16 {
    border-left: none; }

  #studios .studio_block.c17 {
    border-left: none; }

  #studios .studio_block.c18 {
    border-left: none; }

  #studios .studio_block.c19 {
    border-left: none; }

  #studios .studio_block.c20 {
    border-left: none; }

  #studios .studio_block.c21 {
    border-left: none; }

  #studios .studio_block.c22 {
    border-left: none; }

  #studios .studio_block.c23 {
    border-left: none; }

  #studios .studio_block.c24 {
    border-left: none; }

  #studios .studio_block.c25 {
    border-left: none; }

  #studios .studio_block.c99 {
    border-left: none; }

  #studios .studio_block.c01 .st_num {
    background: #feef35; }

  #studios .studio_block.c02 .st_num {
    background: #feef35; }

  #studios .studio_block.c03 .st_num {
    background: #f19625; }

  #studios .studio_block.c04 .st_num {
    background: #f19625; }

  #studios .studio_block.c05 .st_num {
    background: #ea6a67; }

  #studios .studio_block.c06 .st_num {
    background: #ea6a67; }

  #studios .studio_block.c07 .st_num {
    background: #e30b20; }

  #studios .studio_block.c08 .st_num {
    background: #e30b20; }

  #studios .studio_block.c09 .st_num {
    background: #e1147f; }

  #studios .studio_block.c10 .st_num {
    background: #e1147f; }

  #studios .studio_block.c11 .st_num {
    background: #5f1f84; }

  #studios .studio_block.c12 .st_num {
    background: #5f1f84; }

  #studios .studio_block.c13 .st_num {
    background: #1e2586; }

  #studios .studio_block.c14 .st_num {
    background: #1e2586; }

  #studios .studio_block.c15 .st_num {
    background: #0f6ab4; }

  #studios .studio_block.c16 .st_num {
    background: #0f6ab4; }

  #studios .studio_block.c17 .st_num {
    background: #218c83; }

  #studios .studio_block.c18 .st_num {
    background: #218c83; }

  #studios .studio_block.c19 .st_num {
    background: #0a6836; }

  #studios .studio_block.c20 .st_num {
    background: #0a6836; }

  #studios .studio_block.c21 .st_num {
    background: #159848; }

  #studios .studio_block.c22 .st_num {
    background: #159848; }

  #studios .studio_block.c23 .st_num {
    background: #b5d042; }

  #studios .studio_block.c24 .st_num {
    background: #b5d042; }

  #studios .studio_block.c25 .st_num {
    background: #b5d042; }

  #studios .studio_block.c99 .st_num {
    background: black; } }
footer {
  background: rgba(0, 0, 0, 0.9);
  padding: 1.5em;
  color: white;
  overflow: hidden; }
  footer ul {
    float: left; }
    footer ul li {
      float: left;
      margin-right: .5em; }
  footer .copyright {
    color: rgba(255, 255, 255, 0.7);
    float: right; }

#reserve_notice {
  color: red;
  text-decoration: underline;
  cursor: pointer; }
  #reserve_notice:hover {
    text-decoration: none; }

.reservecaption {
  background: #f1f1f1;
  margin-bottom: 10px;
  width: 70%;
  padding: .5em;
  text-align: center; }
  @media all and (max-width: 640px) {
    .reservecaption {
      width: 100%; } }

/* モーダル コンテンツエリア */
#modal-at, #modal-st, #modal-rn {
  display: none;
  width: 900px;
  margin: 0;
  padding: 0;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1001; }
  @media all and (max-width: 640px) {
    #modal-at, #modal-st, #modal-rn {
      width: 90%; } }

#modal-rn {
  text-align: center;
  width: 700px; }
  #modal-rn div.reservehead {
    font-weight: bold;
    margin-bottom: 1em; }
  #modal-rn .notice_list {
    text-align: left;
    margin-bottom: 1em; }
    #modal-rn .notice_list li {
      font-size: .9em;
      margin-bottom: .75em;
      padding-left: 1em; }
    #modal-rn .notice_list li:before {
      content: "- "; }
  @media all and (max-width: 640px) {
    #modal-rn {
      width: 90%;
      height: 100%;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch; } }

.modal_close {
  position: fixed;
  z-index: 1200;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  cursor: pointer;
  top: 0;
  right: 0;
  background: black;
  color: white; }
  @media all and (max-width: 640px) {
    .modal_close {
      background: white;
      color: black; } }
  .modal_close:hover {
    opacity: .5; }
  .modal_close:before {
    content: "x"; }

/* モーダル 背景エリア */
#modal-bg_at, #modal-bg_st, #modal-bg_rn {
  display: none;
  width: 100%;
  height: 100%;
  background-color: white;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000; }

#modal-bg_at {
  height: 120%; }

.artist_detail {
  display: none;
  font-size: .9em;
  height: 480px; }
  .artist_detail.visible {
    display: block; }
  .artist_detail ._left {
    float: right;
    width: 50%; }
  .artist_detail ._right {
    float: left;
    width: 49%;
    line-height: 1.5; }
  .artist_detail .img_wrapper {
    position: relative;
    text-align: center;
    height: 100%; }
    .artist_detail .img_wrapper ._wimg {
      height: 100%;
      position: relative;
      overflow: hidden; }
    .artist_detail .img_wrapper img {
      position: absolute;
      max-width: 100%;
      width: auto;
      max-height: 100%;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .artist_detail ._workinfo {
    height: 104px;
    max-height: 104px; }
  .artist_detail ._wname {
    border-top: solid black 3px;
    padding: .5em .3em;
    font-weight: bold; }
  .artist_detail ._wcaption {
    border-top: solid black thin;
    padding: .5em .3em;
    max-height: 45px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }
  .artist_detail ._name {
    border-top: solid black thin;
    padding: .5em .3em;
    height: 33px; }
  .artist_detail ._url {
    display: inline-block;
    margin-left: .5em; }
  .artist_detail ._stname {
    border-top: dotted black thin;
    padding: .5em .3em;
    height: 33px; }
  .artist_detail ._stname a, .artist_detail ._url a {
    text-decoration: underline;
    cursor: pointer; }
    .artist_detail ._stname a:hover, .artist_detail ._url a:hover {
      text-decoration: none; }
  .artist_detail ._profile {
    border-top: dotted black thin;
    border-bottom: solid black thin;
    padding: .5em .3em;
    height: 310px;
    max-height: 310px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }
    .artist_detail ._profile p {
      margin: 0;
      padding: 0;
      padding-bottom: .5em; }
      .artist_detail ._profile p:nth-child(1) {
        border-bottom: thin gray dotted;
        margin-bottom: .5em; }
  .artist_detail ._en:before {
    content: "|"; }
  @media all and (max-width: 640px) {
    .artist_detail {
      height: auto;
      max-height: 90vh;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch; }
      .artist_detail ._left, .artist_detail ._right {
        float: none;
        width: 100%;
        line-height: 1.5; }
      .artist_detail ._workinfo {
        height: auto;
        max-height: none;
        overflow-y: auto; }
      .artist_detail ._wname {
        height: auto; }
      .artist_detail ._wcaption {
        margin-bottom: 2vh;
        height: auto;
        max-height: none;
        overflow-y: auto; }
      .artist_detail ._name {
        height: auto; }
      .artist_detail ._stname {
        height: auto; }
      .artist_detail ._profile {
        height: auto;
        max-height: none;
        overflow-y: auto; }
      .artist_detail .img_wrapper {
        height: auto; }
        .artist_detail .img_wrapper ._wimg {
          height: auto;
          margin-bottom: 4vh; }
        .artist_detail .img_wrapper img {
          max-height: 50vh;
          width: auto;
          max-width: 100%;
          position: relative;
          top: auto;
          left: auto;
          -webkit-transform: none;
          -ms-transform: none;
          transform: none; } }

.studio_detail {
  display: none;
  height: auto;
  font-size: .8em;
  width: 900px;
  margin: 0 auto; }
  .studio_detail ._left {
    float: left;
    width: 38%;
    margin-right: 1%; }
  .studio_detail ._center {
    float: left;
    width: 30%;
    margin-right: 1%;
    height: 100%; }
  .studio_detail ._right {
    float: right;
    width: 30%; }
  .studio_detail.visible {
    display: block; }
  .studio_detail img {
    max-width: 100%; }
  .studio_detail .stinfo_wrapper {
    overflow: hidden;
    height: 440px; }
    .studio_detail .stinfo_wrapper .map_content {
      width: 100%;
      height: 100%; }
    .studio_detail .stinfo_wrapper a {
      text-decoration: underline; }
      .studio_detail .stinfo_wrapper a:hover {
        text-decoration: none; }
  .studio_detail ._right {
    height: 100%; }
    .studio_detail ._right div {
      position: relative;
      height: 50%;
      width: 100%;
      background-size: contain;
      background-position: center center;
      background-repeat: no-repeat; }
      .studio_detail ._right div img {
        position: absolute;
        max-width: 100%;
        max-height: 100%;
        width: auto;
        height: auto;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
  .studio_detail ._stname {
    overflow: hidden;
    width: 100%;
    font-size: 1.2em;
    border-top: solid black 3px;
    padding: .5em .3em;
    font-weight: bold; }
    .studio_detail ._stname .st_num {
      float: left;
      width: 30px; }
    .studio_detail ._stname .st_name {
      float: left; }
    .studio_detail ._stname .st_ja {
      float: left; }
    .studio_detail ._stname .st_en {
      font-size: .8em;
      float: left;
      display: none; }
      .studio_detail ._stname .st_en:before {
        content: "|"; }
  .studio_detail ._stdate {
    border-top: solid black thin;
    padding: .5em .3em; }
  .studio_detail ._stadd {
    border-top: solid black thin;
    padding: .5em .3em 0; }
  .studio_detail ._stway {
    padding: .5em .3em; }
  .studio_detail ._stcontact {
    border-top: dotted rgba(0, 0, 0, 0.6) thin;
    padding: .5em .3em; }
  .studio_detail .startistlist {
    line-height: 1.5em; }
    .studio_detail .startistlist li {
      display: inline; }
      .studio_detail .startistlist li:after {
        content: ",";
        margin-right: .5em; }
      .studio_detail .startistlist li:last-child:after {
        content: "";
        margin-right: 0; }
  .studio_detail ._start {
    border-top: solid black thin;
    padding: .5em .3em; }
    .studio_detail ._start a {
      cursor: pointer;
      text-decoration: underline; }
      .studio_detail ._start a:hover {
        text-decoration: none; }
  .studio_detail ._stexp {
    border-top: solid black thin;
    padding: .4em .3em; }
  .studio_detail ._stevent {
    border-top: dotted rgba(0, 0, 0, 0.6) thin;
    padding: .4em .3em; }
  .studio_detail .st_close {
    display: none; }
  @media all and (max-width: 640px) {
    .studio_detail {
      width: 100%;
      height: 95vh;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch; }
      .studio_detail ._left, .studio_detail ._center {
        margin-bottom: 5vh; }
      .studio_detail ._center {
        height: 30vh; }
      .studio_detail ._left, .studio_detail ._center, .studio_detail ._right {
        float: none;
        width: 100%; }
      .studio_detail .stinfo_wrapper {
        height: auto; }
      .studio_detail ._right div {
        height: 30vh;
        margin-bottom: 5vh; }
      .studio_detail .st_close {
        display: block;
        text-align: center;
        width: 100%;
        margin-top: 1em;
        padding: .5em;
        background: black;
        color: white;
        margin-bottom: 1em; } }

#tour form input[type="text"], #tour form textarea, #tour form select, #tour form button {
  width: 70%; }
@media all and (max-width: 640px) {
  #tour form input[type="text"], #tour form textarea, #tour form select, #tour form button {
    width: 100%; } }

button {
  width: 50%;
  padding: 10px;
  margin: 0 auto 10px;
  border: none;
  background: black;
  color: white;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  border: 3px black solid;
  cursor: pointer; }
  button:hover {
    background: white;
    color: #333; }
  @media all and (max-width: 640px) {
    button button {
      width: 100%; } }

form select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  color: #666;
  border-radius: 0; }
form select option {
  background-color: #fff;
  color: #333; }
form select::-ms-expand {
  display: none; }
form select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a; }
form input[type="checkbox"] {
  margin-right: .5em;
  text-align: center; }
form input[type="text"], form textarea, form select {
  background: #F1F1F1 repeat-x bottom left;
  width: 50%;
  font-size: 12px;
  margin: 0 auto 10px;
  border: none;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out; }
  form input[type="text"]:focus, form textarea:focus, form select:focus {
    outline: none; }
form textarea {
  min-height: 10vh; }
@media all and (max-width: 640px) {
  form input[type="text"], form textarea {
    width: 100%; }
  form button {
    width: 100%; } }
/*2024水上追加CSS*/
.btn,
a.btn,
button.btn {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
margin: 30px 0;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-svg {
  font-weight: 600;
  line-height: 54px;

  width: 320px;
  height: 74px;
  padding: 0;

  cursor: pointer;
  text-decoration: none;

  background-color: transparent;
}

a.btn-svg svg {
  position: absolute;
  top: 0;
  left: 0;

  width: 100%;
  height: 100%;
}

a.btn-svg svg rect {
  -webkit-transition: all 400ms ease;
  transition: all 400ms ease;

  stroke: #000;
  stroke-width: 2;
  stroke-dasharray: 200px, 16px;
  stroke-dashoffset: 70px;
}

a.btn-svg:hover svg rect {
  stroke-dashoffset: 284px;
}

a.btn-svg span {
  color: #000;
}
