@charset "UTF-8";
/* Scss Document */
/*
@mixin animation($name, $duration, $timing, $delay:0s, $count:1, $direction:normal, $fillmode:none) {
	animation-mame: $name;
	animation-duration: $duration;
	animation-timing-function: $timing;
    @if $delay == 0s {
    } @else {
		animation-delay: $delay;
	}
    @if $count == 1 {
    } @else {
		animation-iteration-count: $count;
	}
    @if $direction == normal {
    } @else {
		animation-direction: $direction;
	}
    @if $fillmode == none {
    } @else {
		animation-fill-mode: $fillmode;
	}
}
*/
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
CONTAINER
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
.container {
  width: calc(100% - 80px);
  margin: 284px 40px 0;
  padding: 0; }

#pageTitle {
  margin: 0 40px; }
  #pageTitle span {
    display: block; }
    #pageTitle span:last-of-type {
      margin: 10px 0 0; }

#pageImage {
  width: 100%;
  height: 400px;
  width: 100%;
  height: 400px;
  margin: 50px 0 0;
  background-color: #000; }
  #pageImage img {
    width: 100%;
    height: 400px;
    width: 100%;
    height: 400px;
    object-fit: cover; }

@media (max-width: 1220px) {
  .container {
    margin: 263px 40px 0; } }
@media (max-width: 800px) {
  #pageTitle {
    margin: 0; }
    #pageTitle span:first-of-type {
      font-size: 40px; } }
@media (max-width: 600px) {
  .container {
    margin: 244px 40px 0; } }
@media (max-width: 500px) {
  .container {
    width: calc(100% - 40px);
    margin: 224px 20px 0; }

  #pageTitle span:first-of-type {
    font-size: 32px; }

  #pageImage {
    height: 200px; }
    #pageImage img {
      height: 200px; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
愛好会（サークル）― 一覧
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
#circleList .introTxt {
  margin: 100px 60px 0; }
  #circleList .introTxt span {
    margin: 0 0 40px;
    display: block; }
#circleList ul {
  margin: 40px 60px 0;
  padding: 0;
  list-style: none; }
  #circleList ul li {
    margin: 0;
    padding: 0;
    border-top: 1px solid #222;
    border-right: 1px solid #222;
    border-left: 1px solid #222; }
    #circleList ul li:last-child {
      border-bottom: 1px solid #222; }
    #circleList ul li a {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-direction: row-reverse;
      -moz-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
      -o-flex-direction: row-reverse;
      flex-direction: row-reverse;
      justify-content: space-between;
      -ms-align-items: center;
      align-items: center;
      position: relative;
      transition: 0.2s linear; }
      #circleList ul li a::before {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        background-color: #eaeaf2;
        -moz-transform: scaleX(0);
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        transform-origin: center right;
        transition: transform 0.2s ease; }
      #circleList ul li a:hover {
        text-decoration: none; }
        #circleList ul li a:hover::before {
          transform-origin: center left;
          -moz-transform: scaleX(1);
          -webkit-transform: scaleX(1);
          transform: scaleX(1); }
    #circleList ul li dl {
      width: calc(100% - 360px);
      margin: 0;
      padding: 0 80px 0 0;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      background-image: url("../img/common/svg/04_gray.svg");
      background-position: right 40px center;
      background-repeat: no-repeat;
      background-size: 34px 48px;
      position: relative;
      transition: 0.1s linear; }
    #circleList ul li a:hover dl {
      background-position: right 60px center; }
    #circleList ul li dl dt {
      margin: 0 0 20px;
      padding: 0;
      position: relative; }
      #circleList ul li dl dt span {
        height: 23px;
        margin: 0 0 20px;
        padding: 4px 10px 0;
        display: inline-block;
        position: relative;
        left: -61px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        #circleList ul li dl dt span::before {
          content: '';
          position: absolute;
          top: 23px;
          left: 0;
          border-top: 4px solid #1b1951;
          border-right: 10px solid #1b1951;
          border-bottom: 4px solid transparent;
          border-left: 10px solid transparent; }
    #circleList ul li dl dd {
      margin: 0;
      padding: 0; }
    #circleList ul li div {
      width: 320px;
      overflow: hidden;
      margin: 0;
      padding: 0;
      align-self: stretch;
      position: relative; }
      #circleList ul li div img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: 0.1s linear; }
    #circleList ul li a:hover div img {
      -moz-transform: scale(1.1);
      -webkit-transform: scale(1.1);
      transform: scale(1.1); }

@media (max-width: 1220px) {
  #circleList .introTxt {
    margin: 100px 0 0; }
  #circleList ul {
    margin: 40px 0 0; } }
@media (max-width: 900px) {
  #circleList ul li {
    padding: 0; }
    #circleList ul li a {
      padding: 30px 20px;
      display: -webkit-block;
      display: -moz-block;
      display: -ms-block;
      display: -o-block;
      display: block; }
    #circleList ul li dl {
      width: 100%;
      margin: 0 0 20px;
      padding: 0;
      background-image: none; }
    #circleList ul li div {
      height: 200px;
      margin: 0 auto; } }
@media (max-width: 900px) {
  #circleList ul li div {
    width: 100%; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
愛好会（サークル）― 詳細
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
#circleDetail article {
  margin: 100px 60px 0;
  padding: 0 40px 40px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  border: 1px solid #222; }
  #circleDetail article .name {
    width: calc(100% - 560px);
    margin: 20px 0 0;
    padding: 0; }
    #circleDetail article .name h3 {
      margin: 0 0 30px;
      padding: 0;
      position: relative; }
      #circleDetail article .name h3 span {
        height: 23px;
        margin: 0 0 20px;
        padding: 4px 10px 0;
        display: inline-block;
        vertical-align: top;
        position: relative;
        left: -61px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        #circleDetail article .name h3 span::before {
          content: '';
          position: absolute;
          top: 23px;
          left: 0;
          border-top: 4px solid #1b1951;
          border-right: 10px solid #1b1951;
          border-bottom: 4px solid transparent;
          border-left: 10px solid transparent; }
  #circleDetail article ul.photo {
    width: 520px;
    margin: 30px 0 0 40px;
    padding: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    list-style: none; }
    #circleDetail article ul.photo li {
      width: 120px;
      height: 120px;
      overflow: hidden;
      margin: 10px 0 0 10px;
      padding: 0;
      position: relative; }
      #circleDetail article ul.photo li img.image {
        width: 120px;
        height: 120px;
        object-fit: cover;
        transition: 0.1s linear; }
      #circleDetail article ul.photo li a:hover img.image {
        -moz-transform: scale(1.1);
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
        opacity: 0.9; }
      #circleDetail article ul.photo li img.zoom {
        padding: 7px;
        position: absolute;
        bottom: 0;
        right: 0;
        background-color: rgba(255, 255, 255, 0.5); }
  #circleDetail article dl {
    width: 100%;
    margin: 40px 0 0;
    padding: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    #circleDetail article dl dt {
      width: 30%;
      margin: 0;
      padding: 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -ms-align-items: center;
      align-items: center;
      justify-content: center; }
    #circleDetail article dl dd {
      width: 70%;
      margin: 0;
      padding: 30px 40px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }

section.list {
  width: 100%;
  margin: 60px 0 0; }
  section.list h4 {
    margin: 0 0 30px; }
  section.list ul {
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    section.list ul li {
      margin: 0 0 30px;
      padding: 0 0 30px;
      border-bottom: 1px solid #f3f3f3; }
      section.list ul li:last-child {
        margin: 0; }
      section.list ul li a {
        padding: 0 30px 0 0;
        color: #222;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -ms-align-items: center;
        align-items: center;
        background-image: url("../img/common/svg/04.svg");
        background-position: right center;
        background-repeat: no-repeat;
        background-size: 10px 14px;
        transition: 0.1s linear; }
        section.list ul li a:hover {
          text-decoration: none;
          font-weight: 700;
          -moz-transform: translateX(10px);
          -webkit-transform: translateX(10px);
          transform: translateX(10px); }
      section.list ul li span.date {
        width: 100px;
        margin: 0 30px 0 0;
        display: inline-block; }
      section.list ul li span.title {
        width: calc(100% - 130px - 50px);
        display: inline-block;
        position: relative; }

#circleDetail dl.other {
  margin: 80px 60px 0;
  padding: 30px; }
  #circleDetail dl.other dt {
    margin: 0;
    padding: 0 0 0 15px;
    position: relative; }
    #circleDetail dl.other dt::before {
      content: '';
      position: absolute;
      top: calc(50% - 5px);
      left: 0;
      border-top: 10px solid #32307b;
      border-right: 6px solid transparent;
      border-bottom: 10px solid transparent;
      border-left: 6px solid transparent; }
  #circleDetail dl.other dd {
    margin: 30px 0 0;
    padding: 0; }
    #circleDetail dl.other dd ul {
      margin: 0;
      padding: 0;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      -o-flex-wrap: wrap;
      flex-wrap: wrap;
      list-style: none; }
      #circleDetail dl.other dd ul li {
        width: 50%;
        margin: 0;
        padding: 0;
        border-bottom: 1px solid #222;
        border-right: 1px solid #222;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        position: relative; }
        #circleDetail dl.other dd ul li::before {
          content: '';
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          background-color: #eaeaf2;
          -moz-transform: scaleX(0);
          -webkit-transform: scaleX(0);
          transform: scaleX(0);
          transform-origin: center right;
          transition: transform 0.2s ease;
          z-index: 1; }
        #circleDetail dl.other dd ul li:hover::before {
          transform-origin: center left;
          -moz-transform: scaleX(1);
          -webkit-transform: scaleX(1);
          transform: scaleX(1); }
        #circleDetail dl.other dd ul li:nth-child(odd) {
          border-left: 1px solid #222; }
        #circleDetail dl.other dd ul li:first-child, #circleDetail dl.other dd ul li:nth-child(2) {
          border-top: 1px solid #222; }
        #circleDetail dl.other dd ul li a {
          width: 100%;
          height: 100%;
          padding: 20px;
          color: #222;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          -ms-align-items: center;
          align-items: center;
          background-image: url("../img/common/svg/04.svg");
          background-position: right 20px center;
          background-repeat: no-repeat;
          background-size: 10px 14px;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          transition: 0.1s linear;
          position: relative;
          z-index: 1; }
          #circleDetail dl.other dd ul li a:hover {
            text-decoration: none;
            background-position: right 30px center; }
          #circleDetail dl.other dd ul li a span {
            width: 60px;
            height: 60px;
            overflow: hidden;
            margin: 0 20px 0 0;
            display: inline-block;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border-radius: 50%; }
            #circleDetail dl.other dd ul li a span img {
              width: 60px;
              height: 60px;
              object-fit: cover;
              -webkit-border-radius: 50%;
              -moz-border-radius: 50%;
              border-radius: 50%;
              transition: 0.1s linear; }
          #circleDetail dl.other dd ul li a:hover span img {
            -moz-transform: scale(1.1);
            -webkit-transform: scale(1.1);
            transform: scale(1.1); }

@media (max-width: 1220px) {
  #circleDetail article {
    margin: 100px 0 0; }
  #circleDetail dl.other {
    margin: 80px 0 0; } }
@media (max-width: 1100px) {
  #circleDetail article {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
    #circleDetail article .name {
      width: 100%; }
    #circleDetail article ul.photo {
      width: 100%;
      margin: 30px 0 0; }
      #circleDetail article ul.photo li {
        margin: 10px 10px 0 0; } }
@media (max-width: 1000px) {
  section.list ul li a {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
  section.list ul li span.date {
    margin: 0;
    display: block; }
  section.list ul li span.title {
    width: 100%;
    margin: 5px 0 0;
    display: block; } }
@media (max-width: 800px) {
  #circleDetail dl.other dd ul {
    display: -webkit-block;
    display: -moz-block;
    display: -ms-block;
    display: -o-block;
    display: block; }
    #circleDetail dl.other dd ul li {
      width: 100%;
      border-left: 1px solid #222; }
      #circleDetail dl.other dd ul li:nth-child(2) {
        border-top: none; } }
@media (max-width: 700px) {
  #circleDetail article {
    padding: 0 20px 40px; }
    #circleDetail article .name h3 span {
      left: -41px; }
    #circleDetail article dl {
      display: -webkit-block;
      display: -moz-block;
      display: -ms-block;
      display: -o-block;
      display: block; }
      #circleDetail article dl dt {
        width: 100%;
        padding: 20px 0; }
      #circleDetail article dl dd {
        width: 100%;
        padding: 30px 20px; } }
@media (max-width: 500px) {
  #circleDetail dl.other {
    padding: 30px 20px; }
    #circleDetail dl.other dd ul li {
      font-size: 16px; } }
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
愛好会（サークル）― 活動報告
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */
#activityReport article {
  margin: 100px 60px 0;
  padding: 0 40px 60px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  border: 1px solid #222; }
  #activityReport article .name {
    width: 100%;
    margin: 20px 0 0;
    padding: 0; }
    #activityReport article .name h3 {
      margin: 0 0 30px;
      padding: 0;
      position: relative; }
      #activityReport article .name h3 span {
        height: 23px;
        margin: 0 0 20px;
        padding: 4px 10px 0;
        display: inline-block;
        vertical-align: top;
        position: relative;
        left: -61px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        #activityReport article .name h3 span::before {
          content: '';
          position: absolute;
          top: 23px;
          left: 0;
          border-top: 4px solid #1b1951;
          border-right: 10px solid #1b1951;
          border-bottom: 4px solid transparent;
          border-left: 10px solid transparent; }
#activityReport section {
  width: 100%;
  margin: 40px 0 0;
  padding: 0; }
  #activityReport section h4.title {
    margin: 0 0 50px;
    padding: 0 0 30px;
    border-bottom: 1px solid #222; }
    #activityReport section h4.title span {
      display: block; }
      #activityReport section h4.title span:first-of-type {
        margin: 30px 0 20px; }
  #activityReport section p.btn {
    width: 100%;
    height: 80px;
    margin: 80px 0 0;
    padding: 0; }
    #activityReport section p.btn a {
      width: 100%;
      height: 100%;
      padding: 30px 0;
      color: #32307b;
      display: block;
      background-color: #cbcbde;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      transition: 0.1s linear; }
      #activityReport section p.btn a:hover {
        color: #FFF;
        text-decoration: none;
        letter-spacing: 0.1em;
        background-color: #2e5a87; }

@media (max-width: 1220px) {
  #activityReport article {
    margin: 100px 0 0; } }
@media (max-width: 700px) {
  #activityReport article {
    padding: 0 20px 60px; }
    #activityReport article .name h3 span {
      left: -41px; }
  #activityReport section h4.title span:last-of-type {
    font-size: 22px; } }
