/* * {
  outline: 1px solid red;
} */

body {
  font-family: 'Gothic A1', sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #1C1C1C;
  letter-spacing: 0.1em;
  line-height: 1.8;
  width: 100%;
  transition: opacity 0.4s;
  transition-duration: 0.4s;
  transition-timing-function: ease;
  transition-delay: 0s;
  transition-property: opacity;
  margin: 0px;
  letter-spacing: 0.05rem;
}

ul,
ol {
list-style: none;
padding: 0px;
}

a {
color: inherit;
text-decoration: none;
}

/* フェードイン */

.js-fade_left {
  opacity: 0;
  visibility: hidden;
  transform: translateX(-60px);
  transition: opacity 1.5s,visibility 1.5s, transform 1.5s;
}

.scroll {
  opacity: 1;
  visibility: visible;
  transform: translateX(0px);
}

.js-fade {
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: opacity 1s,visibility 1s, transform 1s;
}

.scroll {
  opacity: 1;
  visibility: visible;
  transform: translateX(0px);
}

/* フェードイン終了 */



/* ヘッター */

header {
  width: 100%;
  top: 0;
  background-color: #fff;
  z-index: 100;
}

.header_menu_wrapper {
  padding-top: 40px;
  background-color: #D6E4F080;
}

.header_nav_wraper {
  display: none;
}

.nav {
  display: none;
}


.header_menu {
  width: 83.3vw;
  margin: 0 auto;
}

.header_menu_mobile {
  display: none;
}

.header_menu ul {
  display: flex;
  margin-bottom: 0px;
}

.header_menu li {
  margin-right: 60px;
}

.header_menu li a {
  font-size: 20px;
  font-weight: bold;
  position: relative;
}

.header_menu li a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #163172;
  bottom: -7px;               /*アンダーラインがaタグの下端から現れる*/
  transform: scale(0, 1);     /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
  transform-origin: left top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
  transition: transform 0.3s; /*変形の時間*/
}

.header_menu li a:hover::after {
  transform: scale(1, 1);     /*ホバー後、x軸方向に1（相対値）伸長*/
}

.header_menu li.current a::after {
  transform: scale(1, 1);
}

.header_menu li.current a::after {
  background: #163172;
}

.menu_last {
  margin-right: 0px;
}

/* ヘッター終了 */




/* メインビジュアル */

.mainvisual_wrapper {
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #D6E4F080;
}

.mainvisual_wrapper_mb {
  display: none;
}

.mainvisual {
  width: 83.3vw;
  margin: 0 auto;
}

.visual {
  display: flex;
  flex-direction: column;
  /* font-family: 'Lato', sans-serif; */
  font-family: 'Gothic A1', sans-serif;
  font-weight: 700;
  font-style: normal;
}

.visual_line {
  display: block;
}

.visual_top {
  display: flex;
  margin-top: 0px;
  margin-bottom: 0px;
  font-weight: 600;
  line-height: 1.2;
  overflow: hidden;
}

.visual_top p {
  color: #163172;
  font-weight: bold;
  letter-spacing: .06em;
  margin: 0;

  /* ここからアニメーション関係 */
  transform: translateY(2em);
  animation: textanimation 1s forwards;
}
/* 1文字目 */
.visual_top p:nth-child(1) {
  animation-delay: 0.1s
}
/* 2文字目 */
.visual_top p:nth-child(2) {
  animation-delay: 0.2s
}
/* 3文字目 */
.visual_top p:nth-child(3) {
  animation-delay: 0.3s
}
/* 4文字目 */
.visual_top p:nth-child(4) {
  animation-delay: 0.4s
}
/* 5文字目 */
.visual_top p:nth-child(5) {
  animation-delay: 0.5s
}
/* 6文字目 */
.visual_top p:nth-child(6) {
  animation-delay: 0.6s
}
/* 7文字目 */
.visual_top p:nth-child(7) {
  animation-delay: 0.7s
}
/* 8文字目 */
.visual_top p:nth-child(8) {
  animation-delay: 0.8s
}
/* 9文字目 */
.visual_top p:nth-child(9) {
  animation-delay: 0.9s
}
/* 10文字目 */
.visual_top p:nth-child(10) {
  animation-delay: 1s
}
/* 11文字目 */
.visual_top p:nth-child(11) {
  animation-delay: 1.1s
}
/* 12文字目 */
.visual_top p:nth-child(12) {
  animation-delay: 1.2s
}

.visual_top p:nth-child(13) {
  animation-delay: 1.3s
}

.visual_top p:nth-child(14) {
  animation-delay: 1.4s
}

.visual_top p:nth-child(15) {
  animation-delay: 1.5s
}

.visual_top p:nth-child(16) {
  animation-delay: 1.6s
}

.visual_top p:nth-child(17) {
  animation-delay: 1.7s
}

.visual_top p:nth-child(18) {
  animation-delay: 1.8s
}


.visual_sub_top {
  display: flex;
  margin-top: 0px;
  margin-bottom: 10px;
  font-weight: 600;
  line-height: 1.2;
  overflow: hidden;
}

.visual_sub_top p {
  color: #163172;
  font-weight: bold;
  letter-spacing: .06em;
  margin: 0;

  /* ここからアニメーション関係 */
  transform: translateY(2em);
  animation: textanimation 1s forwards;
}

.visual_sub_top p:nth-child(1) {
  animation-delay: 1.9s
}
/* 2文字目 */
.visual_sub_top p:nth-child(2) {
  animation-delay: 2s
}
/* 3文字目 */
.visual_sub_top p:nth-child(3) {
  animation-delay: 2.1s
}
/* 4文字目 */
.visual_sub_top p:nth-child(4) {
  animation-delay: 2.2s
}
/* 5文字目 */
.visual_sub_top p:nth-child(5) {
  animation-delay: 2.3s
}
/* 6文字目 */
.visual_sub_top p:nth-child(6) {
  animation-delay: 2.4s
}
/* 7文字目 */
.visual_sub_top p:nth-child(7) {
  animation-delay: 2.5s
}
/* 8文字目 */
.visual_sub_top p:nth-child(8) {
  animation-delay: 2.6s
}
/* 9文字目 */
.visual_sub_top p:nth-child(9) {
  animation-delay: 2.7s
}
/* 10文字目 */
.visual_sub_top p:nth-child(10) {
  animation-delay: 2.8s
}
/* 11文字目 */
.visual_sub_top p:nth-child(11) {
  animation-delay: 2.9s
}
/* 12文字目 */
.visual_sub_top p:nth-child(12) {
  animation-delay: 3s
}

.visual_sub_top p:nth-child(13) {
  animation-delay: 3.1s
}

.visual_sub_top p:nth-child(14) {
  animation-delay: 3.2s
}

.visual_sub_top p:nth-child(15) {
  animation-delay: 3.3s
}


@keyframes textanimation {
  0% {
      transform: translateY(2em);
  }

  100% {
      transform: translateY(0);
  }
}




.box {
  animation: zoomin 5.5s ease-out forwards;
  
}

@keyframes zoomin {

  0% {
    opacity: 0;
  }

  80% {
    opacity: 0;
    transform: scale(0.7);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.main_visual {
  font-size: 80px;
  color: #163172;
}

.main_visual p {
  margin: 0px;
}

.small_visual {
  display: flex;
  font-size: 50px;
  color: #163172;
}

.small_visual p {
  margin: 0px;
}

.box {
  text-align: right;
}

.visual_pc {
  width: 62.2vw;
}

.visual_mobile {
  display: none;
}

/* メインビジュアル終了 */





/* Works */

.Work_wrapper {
  padding-top: 60px;
  padding-bottom: 120px;
  background-color: #D6E4F080;
  opacity: 0;
  transform: translateX(20px);
  transition: all 1.3s 0s ease-out;
}

.Work {
  width: 83.3vw;
  margin: 0 auto;
}

.Work h2 {
  margin-bottom: 80px;
  margin-top: 0px;
  font-weight: 500;
}

.main_title {
  font-size: 60px;
}

.main_title_last {
  font-size: 60px;
}

.main_title::after {
  display: inline-block;
  content: "";
  border-top: 1px solid #000000;
  width: 40px;
  margin-left: 5px;
  margin-right: 5px;
}

.small_title {
  font-size: 20px;
}

.Work_contents {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
  transition: all 1.3s 0s ease-out;
}



.solutions a {
  display: block;
  height: calc(100% - 54.35px);
  box-shadow: 0 0 5px rgba(0, 0, 0, .3);
}

.solutions p {
  margin-top: 15px;
  margin-bottom: 0px;
  text-align: center;
}




.solutions a {
  position: relative;
  overflow: hidden;
}
.solutions a::before,
.solutions a::after {
  content: "";
  display: block;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  margin: auto;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  opacity: 0;
}
.solutions a::before {
  background: #000000B3;
  width: 100%;
  height: 100%;
}
.solutions a::after {
  color: #fff;
  content: "Read More";
  font-size: 32px;
  font-weight: bold;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
  bottom: 0;
  right: 0;
}

.solutions a:hover::before,
.solutions a:hover::after {
  opacity: 1;
}




.tekuno {
  display: block;
  width: 38vw;
  height: auto;
}

.house {
  display: block;
  width: 38vw;
  height: auto;
}


.guesthouse a {
  display: block;
  height: calc(100% - 54.35px);
  box-shadow: 0 0 5px rgba(0, 0, 0, .3);
}



.guesthouse a {
  position: relative;
  overflow: hidden;
}
.guesthouse a::before,
.guesthouse a::after {
  content: "";
  display: block;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  margin: auto;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  opacity: 0;
}
.guesthouse a::before {
  background: #000000B3;
  width: 100%;
  height: 100%;
}
.guesthouse a::after {
  color: #fff;
  content: "Read More";
  font-size: 32px;
  font-weight: bold;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
  bottom: 0;
  right: 0;
}

.guesthouse a:hover::before,
.guesthouse a:hover::after {
  opacity: 1;
}






.guesthouse  p {
  margin-top: 15px;
  margin-bottom: 0px;
  text-align: center;
}

.Work_btn {
  text-align: center;
}

.Work_btn a {
  display: inline-block;
  padding: 20px 77px;
  font-size: 20px;
  color: #fff;
  border-radius: 50px;
  background-color: #1E56A0;
  text-align: center;
  border: 2px solid #1E56A0;
  cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

.Work_btn a:hover {
  background: #fff;
  color: #1E56A0;
}

/* Works終了 */


/* Skill */

.Skill_wrapper {
  padding-top: 120px;
  padding-bottom: 120px;
  background-color: #1E56A0;
  opacity: 0;
  transform: translateX(-20px);
  transition: all 1.3s 0s ease-out;
}

.Skill {
  width: 83.3vw;
  margin: 0 auto;
}

.Skill h2 {
  margin-top: 0px;
  margin-bottom: 60px;
  color: #fff;
  font-weight: 500;
}

.Skill_main_title {
  font-size: 60px;
}

.Skill_main_title::after {
  display: inline-block;
  content: "";
  border-top: 1px solid #fff;
  width: 40px;
  margin-left: 5px;
  margin-right: 5px;
}

.Skill_small_title {
  font-size: 20px;
}

.Skill_list {
  display: flex;
  justify-content: center;
  color: #fff;
}

.Skill_design {
  margin-right: 80px;
  width: 40%;
}

.design {
  font-size: 30px;
  margin-top: 0px;
  margin-bottom: 0px;
  padding-bottom: 10px;
  text-align: center;
  border-bottom: 1px solid #fff;
}

.Skill_design p {
  margin-top: 30px;
  margin-bottom: 25px;
  font-size: 15px;
}

.Skill_tool {
  display: flex;
  align-items: center;
}

.Skill_tool h3 {
  margin: 0px;
  padding: 5px 10px;
  border: 1px solid #fff;
  font-size: 15px;
  margin-right: 30px;
  text-align: center;
}

.Skill_tool p {
  font-size: 15px;
  margin: 0px;
}

.Skill_cording {
  width: 40%;
}

.cording {
  font-size: 30px;
  margin-top: 0px;
  margin-bottom: 0px;
  padding-bottom: 10px;
  text-align: center;
  border-bottom: 1px solid #fff;
}

.Skill_cording p {
  margin-top: 30px;
  margin-bottom: 25px;
  font-size: 15px;
}

.Skill_cording_tool {
  display: flex;
  align-items: center;
}

.Skill_cording_tool h3 {
  margin: 0px;
  padding: 5px 10px;
  border: 1px solid #fff;
  font-size: 15px;
  margin-right: 30px;
  text-align: center;
}

.Skill_cording_tool p {
  font-size: 15px;
  margin: 0px;
}

/* Skill終了 */


/* about */

.about_wrapper {
  padding-top: 100px;
  padding-bottom: 120px;
  background-color: #D6E4F080;
  opacity: 0;
  transform: translateX(20px);
  transition: all 1.3s 0s ease-out;
}

.about {
  width: 83.3vw;
  margin: 0 auto;
}

.about h2 {
  margin-top: 0px;
  margin-bottom: 80px;
  font-weight: 500;
}

.about_myself {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-bottom: 100px;
}

.about_myself_explanation h3 {
  margin: 0px;
  border-bottom: 1px solid #000000;
  font-weight: 500;
}

.big_name {
  font-size: 50px;
  margin-right: 40px;
  padding-left: 35px;
}

.small_name {
  font-size: 20px;
}

.explation_first {
  margin-top: 35px;
  margin-bottom: 30px;
  font-size: 15px;
}

.explation_second {
  margin-bottom: 30px;
  font-size: 15px;
}

.explation_third {
  font-size: 15px;
}

.about_btn {
  text-align: center;
}

.about_btn a {
  display: inline-block;
  padding: 20px 72px;
  font-size: 20px;
  color: #fff;
  border-radius: 50px;
  background-color: #1E56A0;
  text-align: center;
  border: 2px solid #1E56A0;
  cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

.about_btn a:hover {
  background: #fff;
  color: #1E56A0;
}

.myself_picture_mobile {
  display: none;
}

.myself_picture {
  width: 42vw;
  margin-right: 50px;
  transform: translateY(25px);
}

/* about終了 */


/* フッター */

.footer_wrapper {
  padding-top: 40px;
  padding-bottom: 30px;
  background-color: #163172;
}

.footer {
  width: 83.3vw;
  margin: 0 auto;
}

.footer p {
  text-align: center;
  color: #fff;
  font-size: 50px;
  margin-top: 0px;
  margin-bottom: 55px;
}

.footer_btn {
  text-align: center;
  margin-bottom: 30px;
}

.footer_btn a {
  display: inline-block;
  padding: 20px 90px;
  font-size: 20px;
  color: #000;
  border-radius: 50px;
  background-color: #fff;
  text-align: center;
}

.icon {
  text-align: center;
}










@media (max-width: 760px) {

  /* ハンバーガーメニュー */

  .header_nav_wrapper {
    display: block;
    background-color: #D6E4F080;
  }

  .header_menu_wrapper {
    display: none;
  }

  .header_nav_menu {
    position: fixed;
    display: block;
    top: 20px;
    right: 12%;
    z-index: 40;
  }


  .nav_toggle {
    display: block;
    position: absolute;
    width: 1.75rem;
    height: 1.5rem;
    z-index: 30;
  }
  .nav_toggle i {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #163172;
    position: absolute;
    transition: transform .5s, opacity .5s;
  }
  .nav_toggle i:nth-child(1) {
    top: 0;
  }
  .nav_toggle i:nth-child(2) {
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .nav_toggle i:nth-child(3) {
    bottom: 0;
  }

  .nav_toggle.show i:nth-child(1) {
    transform: translateY(10px) rotate(-45deg);
  }
  .nav_toggle.show i:nth-child(2) {
    opacity: 0;
  }
  .nav_toggle.show i:nth-child(3) {
    transform: translateY(-12px) rotate(45deg);
  }

  .nav {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s, visibility .5s;
    background-color: #FFF;
    transition: all 0.3s;
    display: block;
    width: 100vw;
    height: 100%;
    /* transform: translateY(-24px); */
  }

  .nav.show {
    opacity: 1;
    visibility: visible;
    background-color: #1E56A0;
  }

  .nav ul {
    margin: 0px;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    
  }

  .nav ul li {
    margin-bottom: 60px;
  }

  .nav ul li a{
    display: flex;
    flex-direction: column;
    text-align: center;
    color: #fff;
  }

  .header_main_menu {
    font-size: 24px;
  }

  .header_sub_menu {
    font-size: 13px;
  }
  
  /* ハンバーガーメニュー終了 */
  
  

  /* メインビジュアル */

  main {
    padding-top: 100px;
  }

  .mainvisual_wrapper {
    display: none;
  }

  .mainvisual_wrapper_mb {
    display: block;
    background-color: #D6E4F080;
    padding-top: 100px;
    padding-bottom: 30px;
  }

  .mainvisual_mb {
    width: 88vw;
    margin: 0 auto;
  }

  .visual_mb {
    display: flex;
    flex-direction: column;
  }




  .visual_top_mb {
    display: flex;
    margin-top: 0px;
    margin-bottom: 0px;
    font-weight: 600;
    line-height: 1.2;
    overflow: hidden;
  }

  .visual_top_mb p {
    color: #163172;
    font-weight: bold;
    letter-spacing: .06em;
    margin: 0;
  
    /* ここからアニメーション関係 */
    transform: translateY(2em);
    animation: textanimation 1s forwards;
  }
  /* 1文字目 */
  .visual_top_mb p:nth-child(1) {
    animation-delay: 0.1s
  }
  /* 2文字目 */
  .visual_top_mb p:nth-child(2) {
    animation-delay: 0.2s
  }
  /* 3文字目 */
  .visual_top_mb p:nth-child(3) {
    animation-delay: 0.3s
  }
  /* 4文字目 */
  .visual_top_mb p:nth-child(4) {
    animation-delay: 0.4s
  }
  /* 5文字目 */
  .visual_top_mb p:nth-child(5) {
    animation-delay: 0.5s
  }
  /* 6文字目 */
  .visual_top_mb p:nth-child(6) {
    animation-delay: 0.6s
  }
  /* 7文字目 */
  .visual_top_mb p:nth-child(7) {
    animation-delay: 0.7s
  }
  /* 8文字目 */
  .visual_top_mb p:nth-child(8) {
    animation-delay: 0.8s
  }
  /* 9文字目 */
  .visual_top_mb p:nth-child(9) {
    animation-delay: 0.9s
  }



  .visual_top_mbnext {
    display: flex;
    margin-top: 0px;
    margin-bottom: 0px;
    font-weight: 600;
    line-height: 1.2;
    overflow: hidden;
  }

  .visual_top_mbnext p {
    color: #163172;
    font-weight: bold;
    letter-spacing: .06em;
    margin: 0;
  
    /* ここからアニメーション関係 */
    transform: translateY(2em);
    animation: textanimation 1s forwards;
  }

  /* 1文字目 */
  .visual_top_mbnext p:nth-child(1) {
    animation-delay: 1s
  }
  /* 2文字目 */
  .visual_top_mbnext p:nth-child(2) {
    animation-delay: 1.1s
  }
  /* 3文字目 */
  .visual_top_mbnext p:nth-child(3) {
    animation-delay: 1.2s
  }
  /* 4文字目 */
  .visual_top_mbnext p:nth-child(4) {
    animation-delay: 1.3s
  }
  /* 5文字目 */
  .visual_top_mbnext p:nth-child(5) {
    animation-delay: 1.4s
  }
  /* 6文字目 */
  .visual_top_mbnext p:nth-child(6) {
    animation-delay: 1.5s
  }
  /* 7文字目 */
  .visual_top_mbnext p:nth-child(7) {
    animation-delay: 1.6s
  }

  .visual_top_mbnext p:nth-child(8) {
    animation-delay: 1.7s
  }



  .visual_subtop_mb {
    display: flex;
    margin-top: 0px;
    margin-bottom: 10px;
    font-weight: 600;
    line-height: 1.2;
    overflow: hidden;
  }
  
  .visual_subtop_mb p {
    color: #163172;
    font-weight: bold;
    letter-spacing: .06em;
    margin: 0;
  
    /* ここからアニメーション関係 */
    transform: translateY(2em);
    animation: textanimation 1s forwards;
  }
  
  .visual_subtop_mb p:nth-child(1) {
    animation-delay: 1.8s
  }
  /* 2文字目 */
  .visual_subtop_mb p:nth-child(2) {
    animation-delay: 1.9s
  }
  /* 3文字目 */
  .visual_subtop_mb p:nth-child(3) {
    animation-delay: 2s
  }
  /* 4文字目 */
  .visual_subtop_mb p:nth-child(4) {
    animation-delay: 2.1s
  }
  /* 5文字目 */
  .visual_subtop_mb p:nth-child(5) {
    animation-delay: 2.2s
  }
  /* 6文字目 */
  .visual_subtop_mb p:nth-child(6) {
    animation-delay: 2.3s
  }
  /* 7文字目 */
  .visual_subtop_mb p:nth-child(7) {
    animation-delay: 2.4s
  }
  /* 8文字目 */
  .visual_subtop_mb p:nth-child(8) {
    animation-delay: 2.5s
  }
  /* 9文字目 */
  .visual_subtop_mb p:nth-child(9) {
    animation-delay: 2.6s
  }
  /* 10文字目 */
  .visual_subtop_mb p:nth-child(10) {
    animation-delay: 2.7s
  }
  /* 11文字目 */
  .visual_subtop_mb p:nth-child(11) {
    animation-delay: 2.8s
  }
  /* 12文字目 */
  .visual_subtop_mb p:nth-child(12) {
    animation-delay: 2.9s
  }
  
  .visual_subtop_mb p:nth-child(13) {
    animation-delay: 3s
  }
  
  .visual_subtop_mb p:nth-child(14) {
    animation-delay: 3.1s
  }
  
  .visual_subtop_mb p:nth-child(15) {
    animation-delay: 3.2s
  }
  
  
  @keyframes textanimation {
    0% {
        transform: translateY(2em);
    }
  
    100% {
        transform: translateY(0);
    }
  }









  .main_visual {
    font-size: 36px;
  }

  .small_visual {
    font-size: 24px;
  }

  .visual_pc {
    display: none;
  }

  .visual_mobile {
    display: block;
  }

  .box {
    display: block;
    text-align: center;
  }

  .visual_mobile {
    display: inline-block;
    width: 88vw;
    height: 29.1%;
  }

  /* メインビジュアル終了 */



  /* Work_制作物 */
  
  .Work_wrapper {
    padding-top: 30px;
    padding-bottom: 60px;
    opacity: 0;
    transform: translateY(-20px);
    transition: all 1.3s 0s ease-out;
  }

  .Work {
    width: 88vw;
    margin: 0 auto;
  }

  .Work h2 {
    text-align: center;
    margin-bottom: 40px;
  }

  .main_title {
    font-size: 28px;
  }

  .small_title {
    font-size: 13px;
  }

  .Work_contents {
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    margin-bottom: 60px;
    transform: translateX(0px);
  }

  .solutions {
    margin-right: 0px;
    margin-bottom: 45px;
  }

  .tekuno {
    display: block;
    width: 88vw;
    height: auto;
  }

  .solutions a {
    display: inline-block;
    height: auto;
  }

  .solutions a::before {
    display: none;
  }

  .solutions a::after {
    display: none;
  }

  .solutions p {
    margin-top: 7px;
    font-weight: 600;
  }

  .guesthouse {
    margin-right: 0px;
  }

  .house {
    display: block;
    width: 88vw;
    height: auto;
  }

  .guesthouse a {
    display: inline-block;
    height: auto;
  }

  .guesthouse p {
    margin-top: 7px;
    font-weight: 600;
  }

  .Work_btn a {
    padding: 10px 50px;
  }

  /* Work_制作物終了 */



  /* Skill_できること */

  .Skill_wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
    opacity: 0;
    transform: translateY(-20px);
    transition: all 1.3s 0s ease-out;
  }

  .Skill {
    width: 88vw;
    margin: 0 auto;
  }

  .Skill h2 {
    margin-bottom: 40px;
    text-align: center;
  }

  .Skill_main_title {
    font-size: 28px;
  }

  .Skill_small_title {
    font-size: 13px;
  }

  .Skill_list {
    display: flex;
    flex-direction: column;
  }

  .Skill_design {
    margin-right: 0px;
    margin-bottom: 50px;
    width: 100%;
  }

  br {
    display: block;
  }

  .design {
    font-size: 22px;
    padding-bottom: 10px;
  }

  .Skill_design p {
    margin-top: 25px;
    margin-bottom: 25px;
  }

  .Skill_tool {
    display: flex;
    flex-direction: column;
  }

  .Skill_tool h3 {
    margin-right: 0px;
    margin-bottom: 15px;
    font-size: 14px;
  }

  .Skill_tool p {
    margin: 0px;
  }

  .Skill_cording {
    width: 100%;
  }

  .cording {
    font-size: 22px;
    padding-bottom: 10px;
  }

  .Skill_cording p {
    margin-top: 25px;
    margin-bottom: 25px;
  }

  .Skill_cording_tool {
    display: flex;
    flex-direction: column;
  }

  .Skill_cording_tool h3 {
    margin-right: 0px;
    margin-bottom: 15px;
    font-size: 14px;
  }

  .Skill_cording_tool p {
    margin: 0px;
  }

  /* Skill_できること終了 */




  /* about_私について */

  .about_wrapper {
    padding-top: 60px;
    padding-bottom: 80px;
    opacity: 0;
    transform: translateY(-20px);
    transition: all 1.3s 0s ease-out;
  }

  .about {
    width: 82.2vw;
    margin: 0 auto;
  }

  .about h2 {
    margin-bottom: 40px;
    text-align: center;
  }

  .about_myself {
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
  }

  .about_myself_explanation h3 {
    text-align: center;
    padding-top: 20px;
  }

  .big_name {
    font-size: 26px;
    margin-right: 20px;
    padding-left: 0px;
    font-weight: 500;
  }

  .small_name {
    font-size: 13px;
  }

  .explation_first {
    margin-top: 30px;
    margin-bottom: 30px;
  }

  .explation_second {
    margin-top: 0px;
    margin-bottom: 30px;
  }

  .explation_third {
    margin: 0px;
  }

  .myself_picture_mobile {
    display: block;
    width: 82.1vw;
  }

  .myself_picture{
    display: none;
  }

  .about_btn a {
    padding: 10px 50px;
  }

  /* about_私について終了 */



  /* フッター */

  .footer_wrapper {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .footer {
    width: 88vw;
    margin: 0 auto;
  }

  .footer p {
    font-size: 28px;
    margin-bottom: 25px;
  }

  .footer_btn {
    margin-bottom: 15px;
  }

}









@media (596px<= width <= 760px) {

  .visual_line {
    display: block;
  }

  .main_visual {
    font-size: 38px;
  }

  .small_visual {
    font-size: 26px;
  }

  .main_title {
    font-size: 30px;
  }

  .small_title {
    font-size: 19px;
  }

  .eye_clinic p {
    font-size: 20px;
  }

  .guesthouse p {
    font-size: 20px;
  }

  .Skill_main_title {
    font-size: 30px;
  }

  .Skill_small_title {
    font-size: 19px;
  }

  .big_name {
    font-size: 32px;
  }

  .small_name {
    font-size: 19px;
  }
}










@media (761px<= width <= 1023px) {

  .header_menu {
    width: 83.3vw;
    margin: 0 auto;
  }

  .header_menu ul {
    display: flex;
    justify-content: left;
  }

  .header_menu ul li {
    margin-right: 50px;
  }

  .menu_last {
    display: inline-block;
    margin-right: 0px;
  }

  .mainvisual {
    width: 88vw;
    margin: 0 auto;
  }

  .mainvisual_wrapper {
    padding-top: 80px;
  }

  .main_visual {
    font-size: 48px;
  }

  .small_visual {
    font-size: 40px;
  }

  .visual_line {
    display: block;
  }

  .visual_pc {
    display: none;
  }

  .visual_mobile {
    display: block;
    width: 88vw;
    height: 29.1%;
  }


  .Work_wrapper {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .Work {
    width: 88vw;
    margin: 0 auto;
  }

  .Work h2 {
    margin-bottom: 40px;
  }

  .main_title {
    font-size: 42px;
  }

  .small_title {
    font-size: 22px;
  }

  .Work_contents {
    display: flex;
    flex-direction: column;
    margin-bottom: 60px;
  }

  .solutions {
    margin-right: 0px;
    margin-bottom: 60px;
    display: inline-block;
    text-align: center;
  }

  .solutions a {
    display: inline-block;
    height: calc(100% - 9.8px);
  }

  .solutions p {
    font-size: 22px;
  }

  .tekuno {
    width: 70vw;
    height: 25.3%;
  }

  .guesthouse {
    display: inline-block;
    text-align: center;
  }

  .guesthouse a {
    display: inline-block;
  }

  .guesthouse p {
    font-size: 22px;
  }

  .house {
    width: 70vw;
    height: 25.3%;
    text-align: center;
  }

  .Skill_wrapper {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .Skill_main_title {
    font-size: 42px;
  }

  .Skill_small_title {
    font-size: 22px;
  }

  .Skill h2 {
    margin-bottom: 40px;
  }

  .Skill_list {
    display: flex;
    flex-direction: column;
  }

  .Skill_design {
    margin-right: 0px;
    margin-bottom: 50px;
    width: 100%;
  }

  br {
    display: none;
  }

  .Skill_tool {
    display: flex;
  }

  .Skill_tool h3 {
    margin-right: 40px;
    margin-bottom: 10px;
  }

  .Skill_cording {
    width: 100%;
  }

  .Skill_cording_tool {
    display: flex;
  }

  .Skill_cording_tool h3 {
    margin-right: 40px;
    margin-bottom: 10px;
  }


  .about_wrapper {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .about {
    width: 88vw;
    margin: 0 auto;
  }

  .about h2 {
    margin-bottom: 40px;
  }

  .about_myself {
    display: flex;
    flex-direction: column;
    margin-bottom: 50px;
  }

  .myself_picture {
    width: 75vw;
    display: block;
    text-align: center;
    margin-right: 0px;
    margin-bottom: 25px;
  }

  .about_myself_explanation h3 {
    padding-top: 30px;
  }
  
  .footer p {
    margin-bottom: 40px;
  }
}

@media (851px<= width <= 1023px) {

  .visual_mobile {
    width: 62.2vw;
    text-align: right;
  }

  .box {
    display: inline-block;
    text-align: right;
  }

}

@media (1024px<= width <= 1340px) {

  .main_visual {
    font-size: 60px;
  }

  .small_visual {
    font-size: 45px;
  }

  .main_title {
    font-size: 50px;
  }

  .small_title {
    font-size: 20px;
  }

  .visual_pc {
    width: 62.2vw;
    text-align: right;
  }

  .Work h2 {
    margin-bottom: 50px;
  }

  .Work_contents {
    display: flex;
    justify-content: space-between;
  }

  .eye_clinic {
    margin-right: 0px;
  }

  .eye {
    width: 38vw;
  }

  .house {
    width: 38vw;
  }

  .Skill_list {
    display: flex;
    justify-content: space-around;
  }

  .Skill_design {
    margin-right: 0px;
  }

  .Skill_cording_tool {
    display: block;
  }

  .Skill_cording_tool h3 {
    margin-right: 0px;
    margin-bottom: 20px;
  }
  

  br {
    display: none;
  }

  .myself_picture {
    width: 42vw;
    margin-right: 40px;
  }

  .about_myself_explanation h3 {
    padding-top: 20px;
  }

  .big_name {
    font-size: 40px;
  }

  .small_name {
    font-size: 16px;
  }

  
}


@media (max-width: 389px) {

  .main_visual {
    font-size: 30px;
  }

  .small_visual {
    font-size: 20px;
  }
}

@media (min-width: 1801px) {

  .main_visual {
    font-size: 100px;
  }

  .small_visual {
    font-size: 70px;
  }
}

@media(max-width: 334px) {

  .big_name {
    margin-right: 7px;
  }
}

@media(501px<= width <= 760px) {

  .main_visual {
    font-size: 45px;
  }

  .small_visual {
    font-size: 26px;
  }
}




@media(1024px<= width <= 1429px) {

  .about_myself {
    display: flex;
    flex-direction: column;
  }

  .myself_picture {
    width: 60vw;
    height: auto;
    display: block;
    text-align: center;
    margin-right: 0px;
    margin-bottom: 40px;
  }
}












