@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
@import url(https://fonts.googleapis.com/css?family=Playfair+Display:400,700);
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-weight: normal; }

body {
  line-height: 1.6em; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: #000000; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

main {
  display: block; }

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: none;
  -moz-appearance: button;
       appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer; }

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none; }

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px; }

input {
  -webkit-appearance: none;
  border-radius: 0; }

textarea {
  -webkit-appearance: none;
  border-radius: 0; }

p img {
  vertical-align: bottom; }

li img {
  vertical-align: bottom; }

/* ////////////////////////////////////////
$color
//////////////////////////////////////// */
/* ////////////////////////////////////////
$breakpoint
//////////////////////////////////////// */
/*

HTMLタグのデフォルト定義

*/
* {
  box-sizing: border-box; }

body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0;
  padding: 0; }

/*
Theme Name: Astlogika
Theme URI: http://astlogika.xyz
Description: アストロジカ合同会社公式HP
Version: 1.1
Author: SUPER SUPER
Author URI: http://www.supersuper.jp
*/
/*============================================================================================================
-----Cleaner--------------------------------------------------------------------------------------------------
============================================================================================================*/
.clear {
  clear: both; }

.visible {
  visibility: visible; }

.hidden {
  visibility: hidden; }

.dblock {
  display: block; }

.dnone {
  display: none; }

.pc {
  display: block; }

.sp {
  display: none; }

@media screen and (max-width: 800px) {
  .pc {
    display: none; }
  .sp {
    display: block; } }

/*============================================================================================================
-----Cleaner--------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----clearfix-------------------------------------------------------------------------------------------------
============================================================================================================*/
ul.list {
  /* For modern browsers */
  zoom: 1;
  /* For IE 6/7 (trigger hasLayout) */ }
  ul.list:before, ul.list:after {
    content: "";
    display: table; }
  ul.list:after {
    clear: both; }

/*============================================================================================================
-----clearfix-------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----Setting--------------------------------------------------------------------------------------------------
============================================================================================================*/
html, body {
  height: 100%;
  color: #595757; }

a {
  color: #595757; }

/*============================================================================================================
-----Setting--------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----Loader---------------------------------------------------------------------------------------------------
============================================================================================================*/
#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #ffffff;
  z-index: 9999999; }

#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 99999999; }

.loaded {
  display: none; }

/*============================================================================================================
-----Loader---------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----ScrollAnimation------------------------------------------------------------------------------------------
============================================================================================================*/
.scrEvent {
  position: relative; }

/*============================================================================================================
-----ScrollAnimation------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----Header---------------------------------------------------------------------------------------------------
============================================================================================================*/
header {
  width: 100%;
  height: 91px;
  background-color: #ffffff;
  position: fixed;
  top: 0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  z-index: 999;
  transition: 0.2s; }
  @media screen and (max-width: 800px) {
    header {
      height: 82px; } }
  @media screen and (min-width: 1201px) {
    header.active {
      height: 180px; } }
  header .headerContainer {
    width: 1200px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 800px) {
      header .headerContainer {
        width: 100%; } }
    header .headerContainer .header_logo {
      margin-top: 16px; }
      @media screen and (max-width: 800px) {
        header .headerContainer .header_logo {
          margin-top: 8px; } }
      header .headerContainer .header_logo p {
        text-align: center; }
        header .headerContainer .header_logo p a img {
          width: auto;
          height: 24px;
          transition: 0.4s; }
          @media screen and (max-width: 800px) {
            header .headerContainer .header_logo p a img {
              width: 180px;
              height: auto;
              transition: 0.4s; }
            }
    header .headerContainer .header_insta {
      position: absolute;
      top: 0;
      right: 0; }
      @media screen and (max-width: 800px) {
        header .headerContainer .header_insta {
          right: 7px; } }
      header .headerContainer .header_insta a {
        transition: 0.5s; }
        header .headerContainer .header_insta a:hover {
          opacity: 0.6;
          transition: 0.5s; }
    header .headerContainer nav {
      position: relative; }
      header .headerContainer nav .nav_trigger {
        width: 40px;
        height: 17px;
        position: absolute;
        left: 50%;
        margin-left: -20px;
        margin-top: 16px;
        z-index: 999; }
        @media screen and (max-width: 800px) {
          header .headerContainer nav .nav_trigger {
            margin-top: 12px;
            width: 46px;
            height: 20px;
            margin-left: -23px; } }
        header .headerContainer nav .nav_trigger .menu-trigger,
        header .headerContainer nav .nav_trigger .menu-trigger span {
          display: inline-block;
          transition: all 0.4s;
          box-sizing: border-box; }
        header .headerContainer nav .nav_trigger .menu-trigger {
          position: relative;
          width: 40px;
          height: 14px; }
          header .headerContainer nav .nav_trigger .menu-trigger span {
            position: absolute;
            left: 0;
            width: 100%;
            height: 2px;
            background-color: #595757; }
            header .headerContainer nav .nav_trigger .menu-trigger span:nth-of-type(1) {
              top: 0; }
            header .headerContainer nav .nav_trigger .menu-trigger span:nth-of-type(2) {
              top: 6px; }
            header .headerContainer nav .nav_trigger .menu-trigger span:nth-of-type(3) {
              bottom: 0; }
        header .headerContainer nav .nav_trigger .nav_hitArea {
          width: 80px;
          height: 40px;
          position: absolute;
          top: -10px;
          left: -20px;
          cursor: pointer; }
      header .headerContainer nav .nav_list {
        font-family: "Playfair Display", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "メイリオ", Meiryo, "MS P明朝", "MS 明朝", "Georgia", "Times", serif;
        position: absolute;
        top: 14px;
        width: 600px;
        left: 50%;
        margin-left: -230px; }
        @media screen and (max-width: 800px) {
          header .headerContainer nav .nav_list {
            width: 100%;
            left: auto;
            margin: 0;
            padding: 40px 20px 60px 20px;
            top: -600px;
            background-color: rgba(255, 255, 255, 0);
            opacity: 0;
            transition: 0.2s; }
            header .headerContainer nav .nav_list.active {
              background-color: rgba(255, 255, 255, 0.8);
              opacity: 1;
              top: 40px;
              transition: 0.2s; } }
        header .headerContainer nav .nav_list li {
          float: left;
          font-size: 16px;
          font-weight: bold;
          margin-right: 56px;
          transition: 0.4s;
          opacity: 0;
          position: relative;
          top: 0;
          text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.75); }
          @media screen and (max-width: 800px) {
            header .headerContainer nav .nav_list li {
              top: -69px;
              text-align: center;
              float: none;
              margin-right: 0;
              margin-bottom: 42px; }
              header .headerContainer nav .nav_list li:nth-child(4) {
                top: -95px; }
              header .headerContainer nav .nav_list li:nth-child(5) {
                top: -95px; } }
          header .headerContainer nav .nav_list li:last-child {
            margin-right: 0;
            margin-bottom: 0; }
          header .headerContainer nav .nav_list li.active {
            opacity: 1;
            top: 64px;
            left: 0;
            right: 0;
            bottom: 0; }
            @media screen and (max-width: 800px) {
              header .headerContainer nav .nav_list li.active {
                top: 8px;
                left: auto; } }
        header .headerContainer nav .nav_list_01 {
          left: 213px; }
          @media screen and (max-width: 800px) {
            header .headerContainer nav .nav_list_01 {
              left: auto; } }
        header .headerContainer nav .nav_list_02 {
          left: 112px; }
          @media screen and (max-width: 800px) {
            header .headerContainer nav .nav_list_02 {
              left: auto; } }
        header .headerContainer nav .nav_list_03 {
          left: -4px; }
          @media screen and (max-width: 800px) {
            header .headerContainer nav .nav_list_03 {
              left: auto; } }
        header .headerContainer nav .nav_list_04 {
          left: -125px; }
          @media screen and (max-width: 800px) {
            header .headerContainer nav .nav_list_04 {
              left: auto; } }
        header .headerContainer nav .nav_list_05 {
          left: -245px; }
          @media screen and (max-width: 800px) {
            header .headerContainer nav .nav_list_05 {
              left: auto; } }

.menu-trigger span:nth-of-type(1) {
  -webkit-animation: menu-bar01 0.4s forwards;
  animation: menu-bar01 0.4s forwards; }

@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(6px) rotate(45deg); }
  50% {
    -webkit-transform: translateY(6px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0); } }

@keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(6px) rotate(45deg);
            transform: translateY(6px) rotate(45deg); }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
            transform: translateY(6px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); } }

.menu-trigger span:nth-of-type(2) {
  transition: all .25s .25s;
  opacity: 1; }

.menu-trigger span:nth-of-type(3) {
  -webkit-animation: menu-bar02 0.4s forwards;
  animation: menu-bar02 0.4s forwards; }

@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-6px) rotate(-45deg); }
  50% {
    -webkit-transform: translateY(-6px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0); } }

@keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
            transform: translateY(-6px) rotate(-45deg); }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
            transform: translateY(-6px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); } }

.menu-trigger.active span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 0.4s forwards;
  animation: active-menu-bar01 0.4s forwards; }

@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(6px) rotate(0); }
  100% {
    -webkit-transform: translateY(6px) rotate(45deg); } }

@keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(6px) rotate(0);
            transform: translateY(6px) rotate(0); }
  100% {
    -webkit-transform: translateY(6px) rotate(45deg);
            transform: translateY(6px) rotate(45deg); } }

.menu-trigger.active span:nth-of-type(2) {
  opacity: 0; }

.menu-trigger.active span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 0.4s forwards;
  animation: active-menu-bar03 0.4s forwards; }

@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(-6px) rotate(0); }
  100% {
    -webkit-transform: translateY(-6px) rotate(-45deg); } }

@keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(-6px) rotate(0);
            transform: translateY(-6px) rotate(0); }
  100% {
    -webkit-transform: translateY(-6px) rotate(-45deg);
            transform: translateY(-6px) rotate(-45deg); } }

/*============================================================================================================
-----Header---------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----SideBorder-----------------------------------------------------------------------------------------------
============================================================================================================*/
aside {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9; }
  aside .sideBorder {
    width: 10px;
    background: url("../img/side_border.jpg") repeat-y;
    height: 2000px; }

/*============================================================================================================
-----SideBorder-----------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----topScroll------------------------------------------------------------------------------------------------
============================================================================================================*/
.top_scroll {
  position: absolute;
  bottom: 20px;
  left: 50%;
  margin-left: -23px;
  z-index: 10;
  transition: 0.5s;
  display: none; }

/*============================================================================================================
-----topScroll------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----Main-----------------------------------------------------------------------------------------------------
============================================================================================================*/
main {
  width: 100%;
  padding-left: 10px; }
  main .mainContainer {
    width: 100%;
    margin: 0 auto; }
    main .mainContainer .lowerContainer {
      width: 1200px;
      margin: 0 auto;
      margin-bottom: 60px; }
      @media screen and (max-width: 800px) {
        main .mainContainer .lowerContainer {
          width: calc(100% - 16px); } }
      main .mainContainer .lowerContainer .main_title {
        font-family: "Playfair Display", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "メイリオ", Meiryo, "MS P明朝", "MS 明朝", "Georgia", "Times", serif;
        font-size: 26px;
        letter-spacing: 0.1em;
        text-align: center;
        font-weight: normal;
        position: relative;
        margin-bottom: 55px; }
        main .mainContainer .lowerContainer .main_title:after {
          content: "";
          display: block;
          position: absolute;
          left: 50%;
          margin-top: 9px;
          margin-left: -45px;
          width: 90px;
          height: 4px;
          background-image: url("../img/title_border.jpg"); }
    main .mainContainer .topContainer .top_slide {
      width: 924px;
      height: 600px;
      position: absolute;
      top: 116px;
      right: -1px;
      transition: 0.2s; }
      @media screen and (max-width: 800px) {
        main .mainContainer .topContainer .top_slide {
          width: 90%;
          height: auto; } }
      @media screen and (min-width: 1941px) {
        main .mainContainer .topContainer .top_slide {
          right: auto;
          left: 50%;
          margin-left: -200px; } }
      main .mainContainer .topContainer .top_slide .flexslider {
        margin: 0 0 60px;
        background: #fff;
        border: none;
        position: relative;
        zoom: 1;
        border-radius: 0px;
        -o-box-shadow: "" 0 0 0 transparent;
        box-shadow: "" 0 0 0 transparent; }
        @media screen and (max-width: 800px) {
          main .mainContainer .topContainer .top_slide .flexslider {
            margin-bottom: 0; } }
        main .mainContainer .topContainer .top_slide .flexslider .slide_description {
          display: inline-block;
          padding: 4px 12px;
          background-color: #ffffff;
          border: 1px solid #595757;
          -webkit-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
          transform: rotate(90deg);
          position: absolute;
          top: 18px;
          left: 20px;
          z-index: 3;
          -webkit-transform-origin: 0 0;
          -ms-transform-origin: 0 0;
          transform-origin: 0 0; }
          @media screen and (max-width: 800px) {
            main .mainContainer .topContainer .top_slide .flexslider .slide_description {
              padding: 0 6px;
              top: -14px;
              left: -20px;
              -webkit-transform: rotate(0deg);
              -ms-transform: rotate(0deg);
              transform: rotate(0deg); } }
          main .mainContainer .topContainer .top_slide .flexslider .slide_description h2 {
            font-size: 16px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .topContainer .top_slide .flexslider .slide_description h2 {
                font-size: 10px; } }
            main .mainContainer .topContainer .top_slide .flexslider .slide_description h2 span {
              font-size: 10px;
              vertical-align: middle; }
        @media screen and (max-width: 800px) {
          main .mainContainer .topContainer .top_slide .flexslider .flex-direction-nav li .flex-prev {
            left: -20px;
            bottom: -40px; }
          main .mainContainer .topContainer .top_slide .flexslider .flex-direction-nav li .flex-next {
            left: 80px;
            bottom: -40px; } }
    main .mainContainer .topContainer .top_news {
      width: 772px;
      margin: 0 auto;
      transition: 0.4s; }
      @media screen and (max-width: 800px) {
        main .mainContainer .topContainer .top_news {
          width: 100%; } }
      main .mainContainer .topContainer .top_news h2 {
        padding-top: 92px;
        font-family: "Playfair Display", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "メイリオ", Meiryo, "MS P明朝", "MS 明朝", "Georgia", "Times", serif;
        font-size: 20px;
        text-align: center;
        letter-spacing: 0.1em;
        margin-bottom: 12px; }
      main .mainContainer .topContainer .top_news ul {
        padding: 14px 20px;
        border-bottom: 1px solid #231815;
        border-top: 3px solid #231815;
        overflow-y: scroll;
        height: 107px;
        line-height: 1.76em; }
        @media screen and (max-width: 800px) {
          main .mainContainer .topContainer .top_news ul {
            padding: 10px 16px;
            height: 140px; } }
        main .mainContainer .topContainer .top_news ul li {
          font-size: 14px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .topContainer .top_news ul li {
              font-size: 10px; } }
          main .mainContainer .topContainer .top_news ul li span {
            padding-right: 20px; }



      @media screen and (min-width: 801px) {
        main .mainContainer .aboutContainer {
          margin-top: 860px!important; }
      }
      @media screen and (max-width: 800px) {
        main .mainContainer .aboutContainer {
          margin-top: 450px!important; }
      }


      main .mainContainer .aboutContainer .about_about {
        margin-bottom: 180px; }
        main .mainContainer .aboutContainer .about_about h1 {
          font-size: 24px;
          line-height: 1.8em;
          font-weight: bold;
          text-align: center; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_about h1 {
              font-size: 16px; } }
      main .mainContainer .aboutContainer .about_service {
        margin-bottom: 180px; }
        main .mainContainer .aboutContainer .about_service .service_iconList {
          margin-bottom: 66px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_service .service_iconList {
              margin-bottom: 0; } }
          main .mainContainer .aboutContainer .about_service .service_iconList li {
            width: 214px;
            float: left; }
            @media screen and (max-width: 800px) {
              main .mainContainer .aboutContainer .about_service .service_iconList li {
                height: 188px;
                margin-right: 0;
                padding: 0 10px;
                margin-bottom: 66px; } }
            @media screen and (max-width: 800px) {
              main .mainContainer .aboutContainer .about_service .service_iconList li {
                width: 50%; } }
            main .mainContainer .aboutContainer .about_service .service_iconList li:not(:last-child) {
              margin-right: 114px; }
              @media screen and (max-width: 800px) {
                main .mainContainer .aboutContainer .about_service .service_iconList li:not(:last-child) {
                  margin-right: 0; } }
            @media screen and (max-width: 800px) {
              main .mainContainer .aboutContainer .about_service .service_iconList li:nth-child(even) {
                float: right; } }
            main .mainContainer .aboutContainer .about_service .service_iconList li:before {
              content: "";
              display: block;
              width: 50px;
              height: 50px;
              margin: 0 auto;
              background-image: url("../img/service_icon_splite.png");
              margin-bottom: 24px; }
              @media screen and (max-width: 800px) {
                main .mainContainer .aboutContainer .about_service .service_iconList li:before {
                  margin-bottom: 14px; } }
            main .mainContainer .aboutContainer .about_service .service_iconList li:first-child:before {
              width: 46px;
              background-position: 0 0; }
            main .mainContainer .aboutContainer .about_service .service_iconList li:nth-child(2):before {
              background-position: -46px 0; }
            main .mainContainer .aboutContainer .about_service .service_iconList li:nth-child(3):before {
              background-position: -96px 0; }
            main .mainContainer .aboutContainer .about_service .service_iconList li:nth-child(4):before {
              background-position: -145px 0; }
            main .mainContainer .aboutContainer .about_service .service_iconList li h2 {
              font-size: 24px;
              font-weight: bold;
              margin-bottom: 24px;
              text-align: center;
              letter-spacing: 0.22em; }
              @media screen and (max-width: 800px) {
                main .mainContainer .aboutContainer .about_service .service_iconList li h2 {
                  font-size: 18px; } }
            main .mainContainer .aboutContainer .about_service .service_iconList li h3 {
              font-size: 14px;
              text-align: center; }
              @media screen and (max-width: 800px) {
                main .mainContainer .aboutContainer .about_service .service_iconList li h3 {
                  font-size: 12px; } }
        main .mainContainer .aboutContainer .about_service .service_sentence h3 {
          font-size: 16px;
          margin-bottom: 48px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_service .service_sentence h3 {
              font-size: 14px; } }
        main .mainContainer .aboutContainer .about_service .service_sentence h4 {
          font-size: 16px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_service .service_sentence h4 {
              font-size: 12px; } }
      main .mainContainer .aboutContainer .about_member .memberList li {
        float: left;
        width: 230px;
        position: relative; }
        @media screen and (max-width: 800px) {
          main .mainContainer .aboutContainer .about_member .memberList li {
            width: 50%;
            padding: 0 10px;
            margin-bottom: 30px; } }
        main .mainContainer .aboutContainer .about_member .memberList li:not(:nth-child(4n)) {
          margin-right: 93px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_member .memberList li:not(:nth-child(4n)) {
              margin-right: 0; } }
        main .mainContainer .aboutContainer .about_member .memberList li:nth-child(n + 5) {
          margin-top: 38px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_member .memberList li:nth-child(n + 5) {
              margin-top: 0; } }
        main .mainContainer .aboutContainer .about_member .memberList li p {
          margin-bottom: 34px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_member .memberList li p img {
              width: 100%;
              height: auto; } }
        main .mainContainer .aboutContainer .about_member .memberList li h1 {
          margin-bottom: 4px;
          font-size: 20px;
          text-align: center;
          letter-spacing: 0.14em; }
        main .mainContainer .aboutContainer .about_member .memberList li h3 {
          margin-bottom: 30px;
          font-size: 12px;
          text-align: center; }
        main .mainContainer .aboutContainer .about_member .memberList li h2 {
          font-size: 12px;
          line-height: 1.6em;
          height: 176px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_member .memberList li h2 {
              height: 240px; } }
          main .mainContainer .aboutContainer .about_member .memberList li h2 .member_sentence_left {
            display: block;
            float: left; }
            @media screen and (max-width: 800px) {
              main .mainContainer .aboutContainer .about_member .memberList li h2 .member_sentence_left {
                display: inline;
                float: none; } }
          main .mainContainer .aboutContainer .about_member .memberList li h2 .member_sentence_right {
            display: block;
            float: right;
            width: 145px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .aboutContainer .about_member .memberList li h2 .member_sentence_right {
                display: inline;
                float: none;
                width: auto; } }
        @media screen and (max-width: 800px) {
          main .mainContainer .aboutContainer .about_member .memberList li:nth-child(even) {
            float: right; }
          main .mainContainer .aboutContainer .about_member .memberList li:nth-last-child(-n+2) {
            margin-bottom: 0; } }
        main .mainContainer .aboutContainer .about_member .memberList li:first-child h2, main .mainContainer .aboutContainer .about_member .memberList li:nth-child(2) h2 {
          height: 240px; }
        main .mainContainer .aboutContainer .about_member .memberList li:nth-child(3) h2, main .mainContainer .aboutContainer .about_member .memberList li:nth-child(4) h2 {
          height: 196px; }
        main .mainContainer .aboutContainer .about_member .memberList li:nth-child(6) h2, main .mainContainer .aboutContainer .about_member .memberList li:nth-child(7) h2 {
          height: 116px; }
        main .mainContainer .aboutContainer .about_member .memberList li:nth-child(8) h2, main .mainContainer .aboutContainer .about_member .memberList li:nth-child(9) h2 {
          height: 80px; }
        main .mainContainer .aboutContainer .about_member .memberList li:nth-child(4) h2 .member_sentence_right {
          width: 156px; }
        @media screen and (max-width: 800px) {
          main .mainContainer .aboutContainer .about_member .memberList li:nth-child(6) {
            margin-left: 0;
            float: left; } }
        @media screen and (max-width: 800px) {
          main .mainContainer .aboutContainer .about_member .memberList li:nth-child(7) {
            float: right; } }
        main .mainContainer .aboutContainer .about_member .memberList li:nth-child(8) {
          margin-top: 131px;
          margin-right: 324px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .aboutContainer .about_member .memberList li:nth-child(8) {
              margin-top: 0;
              margin-right: 0;
              float: left; } }
          main .mainContainer .aboutContainer .about_member .memberList li:nth-child(8) h2 {
            height: 50px; }
        @media screen and (max-width: 800px) {
          main .mainContainer .aboutContainer .about_member .memberList li:nth-child(9) {
            float: right; } }

@-webkit-keyframes draw {
  0% {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000; }
  100% {
    stroke-dasharray: 760;
    stroke-dashoffset: 0; } }

@keyframes draw {
  0% {
    stroke-dasharray: 2000;
    stroke-dashoffset: 2000; }
  100% {
    stroke-dasharray: 760;
    stroke-dashoffset: 0; } }
        main .mainContainer .aboutContainer .about_member .memberList li:hover .member_sign {
          webkit-animation: 1.6s draw linear forwards;
          -webkit-animation: 1.6s draw linear forwards;
                  animation: 1.6s draw linear forwards;
          opacity: 1;
          transition: 0.2s; }
        main .mainContainer .aboutContainer .about_member .memberList li .member_sign {
          position: absolute;
          opacity: 0;
          transition: 0.2s; }
          main .mainContainer .aboutContainer .about_member .memberList li .member_sign svg path {
            fill: none;
            stroke: #595757;
            stroke-linejoin: bevel;
            stroke-miterlimit: 10; }
        main .mainContainer .aboutContainer .about_member .memberList li .member_sign01 {
          top: -30px;
          left: 0;
          width: 60px;
          height: auto;
          stroke-width: 1.5; }
        main .mainContainer .aboutContainer .about_member .memberList li .member_sign02 {
          top: -10px;
          left: -20px;
          width: 120px;
          height: auto;
          stroke-width: 1.6; }
        main .mainContainer .aboutContainer .about_member .memberList li .member_sign03 {
          top: -20px;
          right: -30px;
          width: 120px;
          height: auto;
          stroke-width: 0.7; }
        main .mainContainer .aboutContainer .about_member .memberList li .member_sign04 {
          top: 123px;
          left: -24px;
          width: 120px;
          height: auto;
          stroke-width: 1.5; }
        main .mainContainer .aboutContainer .about_member .memberList li .member_sign05 {
          top: 10px;
          left: -34px;
          width: 100px;
          height: auto;
          stroke-width: 1.5; }
    main .mainContainer .worksContainer .works_list .works_thumb_img {
      margin-bottom: 12px; }
    main .mainContainer .worksContainer .works_list .works_thumb_description {
      float: left;
      font-size: 10px;
      letter-spacing: 0.1em;
      line-height: 1.5em; }
    main .mainContainer .worksContainer .works_list .works_thumb_more {
      float: right;
      font-size: 12px;
      letter-spacing: 0.18em; }
      main .mainContainer .worksContainer .works_list .works_thumb_more p a {
        display: block;
        padding: 2px 14px;
        border: 1px solid #595757;
        background-color: #ffffff;
        transition: 0.5s; }
        main .mainContainer .worksContainer .works_list .works_thumb_more p a:hover {
          background-color: #595757;
          color: #ffffff;
          transition: 0.5s; }
    main .mainContainer .worksContainer .works_list .works_mainList {
      margin-bottom: 60px; }
      @media screen and (max-width: 800px) {
        main .mainContainer .worksContainer .works_list .works_mainList {
          margin-bottom: 0; } }
      main .mainContainer .worksContainer .works_list .works_mainList li {
        width: 320px;
        float: left;
        margin-top: 20px; }
        @media screen and (max-width: 800px) {
          main .mainContainer .worksContainer .works_list .works_mainList li {
            width: 100%;
            float: none;
            margin-top: 0;
            margin-bottom: 20px; }
            main .mainContainer .worksContainer .works_list .works_mainList li p img {
              width: 100%;
              height: auto; } }
        main .mainContainer .worksContainer .works_list .works_mainList li:not(:last-child) {
          margin-right: 30px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksContainer .works_list .works_mainList li:not(:last-child) {
              margin-right: 0; } }
        main .mainContainer .worksContainer .works_list .works_mainList li:nth-child(2) {
          width: 500px;
          margin-top: 0; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksContainer .works_list .works_mainList li:nth-child(2) {
              width: 100%; } }
          main .mainContainer .worksContainer .works_list .works_mainList li:nth-child(2) .works_thumb_description {
            font-size: 14px;
            padding-left: 10px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksContainer .works_list .works_mainList li:nth-child(2) .works_thumb_description {
                font-size: 10px;
                padding-left: 0; } }
            main .mainContainer .worksContainer .works_list .works_mainList li:nth-child(2) .works_thumb_description .works_thumb_title {
              font-weight: bold; }
              @media screen and (max-width: 800px) {
                main .mainContainer .worksContainer .works_list .works_mainList li:nth-child(2) .works_thumb_description .works_thumb_title {
                  font-weight: normal; } }
    main .mainContainer .worksContainer .works_list .works_subList {
      width: 1020px;
      margin: 0 auto; }
      @media screen and (max-width: 800px) {
        main .mainContainer .worksContainer .works_list .works_subList {
          width: 100%;
          margin: 0; } }
      main .mainContainer .worksContainer .works_list .works_subList li {
        width: 320px;
        float: left;
        margin-bottom: 35px; }
        @media screen and (max-width: 800px) {
          main .mainContainer .worksContainer .works_list .works_subList li {
            width: 100%;
            margin-bottom: 20px; }
            main .mainContainer .worksContainer .works_list .works_subList li p img {
              width: 100%;
              height: auto; } }
        main .mainContainer .worksContainer .works_list .works_subList li:not(:nth-child(3n)) {
          margin-right: 30px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksContainer .works_list .works_subList li:not(:nth-child(3n)) {
              margin-right: 0; } }
    main .mainContainer .worksContainer .works_more {
      width: 1020px;
      height: 46px;
      margin: 0 auto;
      border: 1px solid #595757;
      box-shadow: 0 3px 1px #3e3a39;
      margin-top: 100px;
      background-color: #ffffff;
      transition: 0.5s; }
      @media screen and (max-width: 800px) {
        main .mainContainer .worksContainer .works_more {
          width: 100%; } }
      main .mainContainer .worksContainer .works_more:hover {
        cursor: pointer;
        background-color: #595757;
        transition: 0.5s; }
        main .mainContainer .worksContainer .works_more:hover p {
          color: #ffffff; }
      main .mainContainer .worksContainer .works_more p {
        text-align: center;
        font-size: 18px;
        font-weight: bold;
        margin-top: 11px; }
    main .mainContainer .worksDetailContainer {
      padding-top: 116px; }
      @media screen and (max-width: 800px) {
        main .mainContainer .worksDetailContainer {
          padding-top: 100px; } }
      main .mainContainer .worksDetailContainer .works_detail_main {
        position: relative; }
        @media screen and (max-width: 800px) {
          main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg {
            padding-top: 40px; } }
        main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg p {
          width: 900px;
          height: auto; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg p {
              width: 100%; } }
          main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg p img {
            width: 900px;
            height: auto; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg p img {
                width: 100%; } }
        main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit {
          margin-top: 22px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit {
              margin-top: 8px; } }
          main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit table tr th {
            font-size: 14px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit table tr th {
                font-size: 10px; } }
            main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit table tr th:first-child {
              width: 120px;
              text-align: left; }
              @media screen and (max-width: 800px) {
                main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit table tr th:first-child {
                  width: 46px; } }
            main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit table tr th:nth-child(2) {
              width: 16px; }
            main .mainContainer .worksDetailContainer .works_detail_main .works_mainImg .works_detail_credit table tr th:nth-child(3) {
              padding-left: 4px; }
        main .mainContainer .worksDetailContainer .works_detail_main .works_detail_back {
          position: absolute;
          top: 0;
          right: 0; }
          main .mainContainer .worksDetailContainer .works_detail_main .works_detail_back p {
            font-size: 18px;
            font-weight: bold; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksDetailContainer .works_detail_main .works_detail_back p {
                font-size: 14px; } }
            main .mainContainer .worksDetailContainer .works_detail_main .works_detail_back p a {
              color: #595757;
              letter-spacing: 0.1em;
              transition: 0.4s; }
              main .mainContainer .worksDetailContainer .works_detail_main .works_detail_back p a:hover {
                opacity: 0.4;
                transition: 0.4s; }
        main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text {
          width: 550px;
          background-color: #ffffff;
          position: relative;
          top: -140px;
          left: 650px;
          margin-bottom: -140px;
          padding: 22px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text {
              width: 100%;
              top: auto;
              left: auto;
              padding: 0;
              margin-top: 20px;
              margin-bottom: 40px; } }
          main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text .works_detail_dete {
            font-size: 14px;
            margin-bottom: 22px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text .works_detail_dete {
                font-size: 12px;
                margin-bottom: 0; } }
          main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text .works_detail_title {
            font-size: 24px;
            font-weight: bold;
            padding-bottom: 18px;
            border-bottom: 4px solid #595757;
            margin-bottom: 18px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text .works_detail_title {
                font-size: 16px;
                padding-bottom: 6px;
                border-bottom: 3px solid #595757;
                margin-bottom: 12px; } }
          main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text .works_detail_description {
            font-size: 14px;
            font-weight: bold;
            text-align: justify;
            letter-spacing: 0.1em; }
            @media screen and (max-width: 800px) {
              main .mainContainer .worksDetailContainer .works_detail_main .works_detail_text .works_detail_description {
                font-size: 12px;
                font-weight: normal;
                letter-spacing: 0;
                line-height: 1.4em; } }
      @media screen and (max-width: 800px) {
        main .mainContainer .worksDetailContainer .works_detail_sub ul li {
          width: 100%;
          height: auto; }
          main .mainContainer .worksDetailContainer .works_detail_sub ul li img {
            width: 100%;
            height: auto; } }
      main .mainContainer .worksDetailContainer .works_detail_sub ul li:not(:last-child) {
        margin-bottom: 20px; }
        @media screen and (max-width: 800px) {
          main .mainContainer .worksDetailContainer .works_detail_sub ul li:not(:last-child) {
            margin-bottom: 10px; } }
      main .mainContainer .worksDetailContainer .works_detail_back_02 {
        margin-top: 20px;
        position: relative;
        z-index: 10; }
        main .mainContainer .worksDetailContainer .works_detail_back_02 p {
          font-size: 18px;
          font-weight: bold; }
          @media screen and (max-width: 800px) {
            main .mainContainer .worksDetailContainer .works_detail_back_02 p {
              font-size: 14px; } }
          main .mainContainer .worksDetailContainer .works_detail_back_02 p a {
            color: #595757;
            letter-spacing: 0.1em;
            transition: 0.4s; }
            main .mainContainer .worksDetailContainer .works_detail_back_02 p a:hover {
              opacity: 0.4;
              transition: 0.4s; }
    main .mainContainer .contactContainer {
      position: relative;
      width: 100%; }
      main .mainContainer .contactContainer .contact_back {
        width: 100%;
        height: 584px;
        overflow-x: hidden;
        position: absolute;
        top: 80px;
        left: 0;
        z-index: -1; }
        main .mainContainer .contactContainer .contact_back iframe {
          width: 140%;
          height: 584px;
          position: absolute;
          left: -20%; }
        main .mainContainer .contactContainer .contact_back #map {
          width: 140%;
          height: 584px;
          position: absolute;
          left: -20%; }
        main .mainContainer .contactContainer .contact_back_layer {
          background-color: rgba(89, 87, 87, 0.7);
          width: 100%;
          height: 584px;
          position: absolute;
          top: 0; }
          @media screen and (max-width: 800px) {
            main .mainContainer .contactContainer .contact_back_layer {
              background-color: rgba(89, 87, 87, 0.9); } }
      main .mainContainer .contactContainer .contactContents {
        width: 1200px;
        height: 584px;
        margin: 0 auto; }
        @media screen and (max-width: 800px) {
          main .mainContainer .contactContainer .contactContents {
            width: calc(100% - 16px); } }
        main .mainContainer .contactContainer .contactContents .contact_list {
          color: #ffffff;
          font-size: 20px;
          padding-top: 100px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .contactContainer .contactContents .contact_list {
              font-size: 14px; } }
          main .mainContainer .contactContainer .contactContents .contact_list li {
            margin-bottom: 16px;
            font-weight: lighter;
            text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.75); }
            @media screen and (max-width: 800px) {
              main .mainContainer .contactContainer .contactContents .contact_list li {
                height: 50px; } }
        main .mainContainer .contactContainer .contactContents .contact_list_01 {
          float: left;
          width: 220px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .contactContainer .contactContents .contact_list_01 {
              width: 36%; } }
        main .mainContainer .contactContainer .contactContents .contact_button {
          margin-top: 74px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .contactContainer .contactContents .contact_button {
              margin-top: 24px;
              clear: both; } }
          main .mainContainer .contactContainer .contactContents .contact_button p {
            font-size: 24px;
            font-weight: bold; }
            @media screen and (max-width: 800px) {
              main .mainContainer .contactContainer .contactContents .contact_button p {
                font-size: 16px; } }
            main .mainContainer .contactContainer .contactContents .contact_button p a {
              padding: 8px 42px;
              background-color: #ffffff;
              box-shadow: 2px 2px 3px rgba(255, 255, 255, 0.35);
              transition: 0.5s; }
              @media screen and (max-width: 800px) {
                main .mainContainer .contactContainer .contactContents .contact_button p a {
                  padding: 6px 32px; } }
              main .mainContainer .contactContainer .contactContents .contact_button p a:hover {
                background-color: #595757;
                color: #ffffff;
                transition: 0.5s; }
            main .mainContainer .contactContainer .contactContents .contact_button p:first-child {
              float: left; }
              @media screen and (max-width: 800px) {
                main .mainContainer .contactContainer .contactContents .contact_button p:first-child {
                  float: none;
                  margin-bottom: 32px; } }
              main .mainContainer .contactContainer .contactContents .contact_button p:first-child a {
                margin-right: 62px; }
                @media screen and (max-width: 800px) {
                  main .mainContainer .contactContainer .contactContents .contact_button p:first-child a {
                    margin-right: 0; } }
    main .mainContainer .linksContainer .links_list {
      width: 864px;
      margin: 0 auto; }
      @media screen and (max-width: 800px) {
        main .mainContainer .linksContainer .links_list {
          width: 100%; } }
      main .mainContainer .linksContainer .links_list li {
        float: left; }
        @media screen and (max-width: 800px) {
          main .mainContainer .linksContainer .links_list li:nth-child(add) {
            float: left; }
          main .mainContainer .linksContainer .links_list li:nth-child(even) {
            float: right; } }
        main .mainContainer .linksContainer .links_list li:not(:last-child) {
          margin-right: 132px; }
          @media screen and (max-width: 800px) {
            main .mainContainer .linksContainer .links_list li:not(:last-child) {
              margin-right: 0;
              margin-bottom: 20px; } }
        @media screen and (max-width: 800px) {
          main .mainContainer .linksContainer .links_list li {
            padding: 0 20px;
            width: 50%; }
            main .mainContainer .linksContainer .links_list li img {
              width: 100%;
              height: auto; } }
        main .mainContainer .linksContainer .links_list li a:hover p {
          opacity: 0.6;
          transition: 0.5s; }
        main .mainContainer .linksContainer .links_list li a p {
          transition: 0.5s; }
          main .mainContainer .linksContainer .links_list li a p:first-child {
            margin-bottom: 20px; }
            @media screen and (max-width: 800px) {
              main .mainContainer .linksContainer .links_list li a p:first-child {
                margin-bottom: 10px; } }
          main .mainContainer .linksContainer .links_list li a p:nth-child(2) {
            font-size: 14px;
            font-weight: bold;
            text-align: center; }
            @media screen and (max-width: 800px) {
              main .mainContainer .linksContainer .links_list li a p:nth-child(2) {
                font-size: 8px; } }
    main .mainContainer .pagetop {
      text-align: center;
      font-family: "Playfair Display", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "メイリオ", Meiryo, "MS P明朝", "MS 明朝", "Georgia", "Times", serif;
      margin-bottom: 40px; }
      main .mainContainer .pagetop p a {
        border-bottom: 2px solid #595757;
        padding-bottom: 4px;
        font-size: 16px;
        font-weight: bold;
        display: inline-block;
        letter-spacing: 0.05em;
        transition: 0.5s; }
        main .mainContainer .pagetop p a:hover {
          opacity: 0.4;
          transition: 0.5s; }

/*============================================================================================================
-----Main-----------------------------------------------------------------------------------------------------
============================================================================================================*/
/*============================================================================================================
-----Footer---------------------------------------------------------------------------------------------------
============================================================================================================*/
footer .footerContainer {
  width: 100%;
  background-color: #595757;
  position: relative;
  z-index: 99999; }
  footer .footerContainer p {
    color: #ffffff;
    font-size: 12px;
    font-weight: bold;
    text-align: center; }
    @media screen and (max-width: 800px) {
      footer .footerContainer p {
        font-size: 10px;
        font-style: normal; } }

/*============================================================================================================
-----Footer---------------------------------------------------------------------------------------------------
============================================================================================================*/




main .mainContainer .lowerContainer .main_title {
  margin-bottom: 100px;
}
@media screen and (max-width: 800px) {

}











