@charset "utf-8";

/* CSS Document */
/*
Theme Name:AMATERASU
Description:Easy,SimpleDesign
Version:simple 1.1
Base Color:red
Author:AMATERASU
Author URI:http://www.seo-amaterasu.com/
*/

.home #content h3 {
  padding: 0;
  border: unset;
  font-weight: 600;
  background-color: unset;
}

#top_page .wrap {
  max-width: 1200px;
  margin: 0 auto;
}

#top_page .top_h2 {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  margin-top: 100px;
  margin-bottom: 60px;
}

#top_page .top_h2 h2 {
background: linear-gradient(135deg, #00ddd0 32%, #0074e0 100%);
color: transparent;
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
text-fill-color: transparent;
  font-size: 80px;
  line-height: 1em;
  margin-bottom: 0;
  padding: 10px 10px 0 10px;
  border: none;
}

#top_page .top_h2 p {
  background-color: unset;
  color: #404040;
  line-height: 1em;
  font-size: 28px;
  margin: 12px auto 0;
  font-weight: 500;
}

/*****768以下*****/
@media screen and (max-width:768px) {

  .home #content h2,
  .home #content h3 {
    padding: 0;
    border: unset;
    font-weight: 600;
    background-color: unset;
  }

  #top_page .top_h2 h2 {
    width: 100%;
    padding-left: 0;
    text-align: center;
    font-size: 13vw;
  }

  #top_page .top_h2 p {
    font-size: 6vw;
  }
}

/**********************************************************/
/********コロナ対策******************************************/
/**********************************************************/
.cov_news {
  background: #ECECEC;
  text-align: center;
  margin-bottom: 0;
  padding: 25px 0.5em 25px;
}

.cov_in {
  max-width: 660px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  text-align: center;
  padding: 00px 0;
  border-radius: 0px;
}

.cov_news .cov_in a {
  position: relative;
  background: #575757;
  text-align: center;
  text-decoration: none;
  padding: 30px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
}

.cov_news .cov_in:hover {
  opacity: 0.7;
}

.cov_news a::before {
  content: '';
  background-image: url('images/corona_attention.png');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  width: 59px;
  height: 47px;
  margin: 0;
}

.cov_news a::after {
  content: "";
  border: #ffffff solid;
  border-width: 4px 0 0 4px;
  height: 15px;
  width: 15px;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

.cov_news a b {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.2em;
  font-weight: 600;
  color: #ffffff;
  padding: 0;
  margin: 0 30px 0 30px;
}

.cov_news a b span {
  color: #ffff;
}

/*****768以下*****/
@media screen and (max-width:768px) {
  .cov_news {
    padding: 0;
  }

  .cov_news .cov_in a b {
    font-size: 4vw;
    margin: 0 6%;
    font-weight: 600;
  }

  .cov_news a::before {
    background-image: url('images/corona_attention_sp.png');
    width: 14vw;
    height: 11vw;
  }

  .cov_news a::after {
    border-width: 3px 0 0 3px;
    height: 10px;
    width: 10px;
  }
}

/**********************************************************/
/*****メインイメージ下のSPメニュー(768以下)*************************/
/**********************************************************/
@media screen and (max-width:768px) {
  #top_page .t_sp_menu ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-evenly;
    align-items: center;
    margin-top: 4%;
  }

  #top_page .t_sp_menu ul li {
    width: 46%;
    font-size: 4vw;
    margin-bottom: 3%;
  }

  #top_page .t_sp_menu ul li a {
    background: #11C5D9;
    display: block;
    padding: 10% 5%;
    display: flex;
    text-decoration: none;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    position: relative;
  }

  #top_page .t_sp_menu ul li a span.sp_memu_text {
    color: white;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 1px;
  }

  #top_page .t_sp_menu ul li a span.sp_memu_icon {
    width: 1.5em;
    margin-right: 0.5em;
  }

  #top_page .t_sp_menu ul li a span.sp_memu_icon img {
    //image-rendering: pixelated;
    //image-rendering: -moz-crisp-edges;
    //image-rendering: crisp-edges;
    //-ms-interpolation-mode: nearest-neighbor;
  }

  #top_page .t_sp_menu ul li a::before {
    border-left: 2px solid;
    border-top: 2px solid;
    border-color: #ffffff;
    content: "";
    height: 5px;
    position: absolute;
    right: 15px;
    top: 42%;
    -moz-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 5px;
  }
}

/**********************************************************/
/********コンセプト*******************************************/
/**********************************************************/
#top_content_01 {
  margin: 60px 0 140px;
}

.top_content_01_wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: flex-end;
  align-content: center;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.top_content_01_wrap figure {
  width: 52.6666666666666vw;
  height: 650px;
  overflow: hidden;
  display: flex;
  position: absolute;
  flex-direction: row;
  left: 0;
  z-index: 9;
  top: 0;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.top_content_01_wrap figure img {
  height: auto;
  width: 100%;
  max-height: inherit;
}

.top_content_01_wrap .top_content_01_text {
  width: 62.666666666666666666666666666666vw;
  padding: 100px 6vw 120px 21vw;
  margin-top: 150px;
  background: #0c4264;
  position: relative;
  z-index: 0;
}

#top_page .top_content_01_wrap .top_content_01_text h3 {
  margin-bottom: 0.75em;
  font-size: 25px;
  color: #ffffff;		
}

.top_content_01_wrap .top_content_01_text p {
  max-width: 500px;
  margin-bottom: 1em;
  color: #ffffff;		 
}

#top_page .top_content_01_wrap .top_h2 {
  position: absolute;
  top: 70px;
  left: 170px;
  z-index: 59999;
  width: 100%;
  margin: 0;
}

#top_page .top_content_01_wrap .top_h2 h2 {
  padding-left: 4%;
  /* padding-top: 52%; */
  text-align: left;
}

#top_content_01 .btn {
  margin: 36px 0 0;
  display: block;
  text-align: center;
  max-width: 270px;
}

#top_content_01 .btn a {
  letter-spacing: 1.5px;
  width: 270px;
  height: 70px;
  font-weight: 500;
  font-size: 20px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  color: #fff;
  position: relative;
  background-color: #27b0cb;
  background-image: -moz-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: -webkit-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: linear-gradient(150deg, #27b0cb 0%, #0793af 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#27b0cb', endColorstr='#0793af', GradientType=1);
}

#top_content_01 .btn a::before {
  border-left: 3px solid;
  border-top: 3px solid;
  border-color: #ffffff;
  content: "";
  height: 9px;
  position: absolute;
  right: 15px;
  top: 42%;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 9px;
}

#top_content_01 .btn a:hover {
  opacity: 0.7;
}

/*****768以下*****/
@media screen and (max-width:768px) {
 .sp-only{
	display: block;
	}	
	
  #top_content_01 {
    margin: 0 0 55px;
  }

  .top_content_01_wrap {
    flex-direction: column;
  }

  .top_content_01_wrap .top_content_01_text {
    width: 100%;
    padding: 8% 4% 12% 4%;
    margin: 0;
  }

  .top_content_01_wrap figure {
    position: relative;
    height: auto;
    width: 94%;
    left: 0;
    top: 35vw;
  }

  .top_content_01_wrap figure img {
    width: 100%;
    height: auto;
  }

  #top_page .top_content_01_wrap .top_h2 {
    width: 100vw;
    left: 0;
    top: 1.2em;
    position: relative;
    text-align: center;
    padding-top: 37%;
  }

  #top_page .top_content_01_wrap .top_content_01_text h3 {
    font-size: 5.25vw;
  }

  #top_content_01 .btn {
    margin: 7% auto 0;
    width: 250px;
  }

  #top_content_01 .btn a {
    width: 250px;
    font-size: 18px;
    height: 60px;
  }
}

/*****769以上＆1199以下*****/
@media screen and (min-width: 769px) and (max-width: 1249px) {
  #top_content_01 {
    margin: 0 0 55px;
  }

  #top_page .top_content_01_wrap .top_h2 {
    top: -30px;
  }

  .top_content_01_wrap .top_content_01_text {
    width: 760px;
    padding: 70px 40px 60px 220px;
    margin-top: 60px;
  }

  .top_content_01_wrap figure {
    width: 620px;
    height: 510px;
  }
}

/*****1250以上＆1400以下*****/
@media screen and (min-width: 1250px) and (max-width: 1400px) {
  #top_page .top_content_01_wrap .top_h2 {
    top: -10px;
  }

  .top_content_01_wrap .top_content_01_text {
    padding: 60px 40px 60px 14%;
    margin-top: 70px;
  }

  .top_content_01_wrap figure {
    width: 48%;
    height: 510px;
  }
}

/**********************************************************/
/********選ばれる理由****************************************/
/**********************************************************/
#top_content_02>figure {
  max-height: 400px;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

#top_content_02>figure picture,
#top_content_02>figure picture img {
  width: 100%;
}

#top_content_02 ul.wrap li.top_content_02_box {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  padding-top: 60px;
  margin-bottom: 90px;
}

#top_content_02 ul.wrap li.top_content_02_box .top_content_02_text {
  width: 870px;
  background-color: #80f4c3;
  /* Old browsers */
  background-image: -moz-linear-gradient(-30deg, #80f4c3 0%, #0cb6e3 100%);
  /* FF3.6-15 */
  background-image: -webkit-linear-gradient(-30deg, #80f4c3 0%, #0cb6e3 100%);
  /* Chrome10-25,Safari5.1-6 */
  background-image: linear-gradient(150deg, #01e0ff 0%, #0f6194 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80f4c3', endColorstr='#0cb6e3', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  padding: 75px 50px 75px 225px;
}

#top_content_02 ul.wrap li.top_content_02_box:nth-child(2) {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}

#top_content_02 ul.wrap li.top_content_02_box:nth-child(2) .top_content_02_text {
  padding: 75px 225px 75px 50px;
  background-color: #e8f57c;
  /* Old browsers */
  background-image: -moz-linear-gradient(-30deg, #e8f57c 0%, #0ed2c7 99%);
  /* FF3.6-15 */
  background-image: -webkit-linear-gradient(-30deg, #e8f57c 0%, #0ed2c7 99%);
  /* Chrome10-25,Safari5.1-6 */
  background-image: linear-gradient(150deg, #52d0ff 0%, #00158c 99%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e8f57c', endColorstr='#0ed2c7', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

#top_content_02 ul.wrap li.top_content_02_box figure.top_content_02_img {
  position: absolute;
  top: 0;
  z-index: 999999;
}

#top_content_02 ul.wrap li.top_content_02_box:nth-child(2n+1) figure.top_content_02_img {
  left: 0;
}

#top_content_02 ul.wrap li.top_content_02_box:nth-child(2n) figure.top_content_02_img {
  right: 0;
}

#top_content_02 ul.wrap li.top_content_02_box .top_content_02_text h3 {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: flex-end;
  background-color: unset;
}

#top_content_02 ul.wrap li.top_content_02_box .top_content_02_text h3 b {
  font-size: 4.1em;
  line-height: 1em;
  letter-spacing: 3px;
  color: #fff;
}

#top_content_02 ul.wrap li.top_content_02_box .top_content_02_text h3 span {
  font-size: 22px;
  color: #fff;
  margin-left: 7px;
}

#top_content_02 ul.wrap li.top_content_02_box .top_content_02_text p {
  color: #fff;
  margin-bottom: 15px;
}

#top_content_02 ul.wrap li.top_content_02_box .top_content_02_text p:last-child {
  margin-bottom: 0;
}
/********選ばれる理由04ここから****************************************/
#top_content_02 ul.wrap li.top_content_02_box:nth-child(4) {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}

#top_content_02 ul.wrap li.top_content_02_box:nth-child(4) .top_content_02_text {
  padding: 75px 225px 75px 50px;
  background-color: #e8f57c;
  background-image: -moz-linear-gradient(-30deg, #e8f57c 0%, #0ed2c7 99%);
  background-image: -webkit-linear-gradient(-30deg, #e8f57c 0%, #0ed2c7 99%);
  background-image: linear-gradient(150deg, #52d0ff 0%, #00158c 99%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e8f57c', endColorstr='#0ed2c7', GradientType=1);
}
/********選ばれる理由04ここまで****************************************/

/*****769以上*****/
@media screen and (min-width:769px) {
  #top_content_02 {
    background-image: url(images/reason_bg01.webp);
    background-position: center;
  }
}

/*****768以下*****/
@media screen and (max-width:768px) {
  #top_page #top_content_02 .top_h2 {
    margin: 10% 0 -23.5vw;
  }

  #top_content_02 ul.wrap li.top_content_02_box .top_content_02_text,
  #top_content_02 ul.wrap li.top_content_02_box:nth-child(2) .top_content_02_text {
    width: 100%;
    padding: 35% 5% 5% 5%;
  }

  #top_content_02 ul.wrap li.top_content_02_box, #top_content_02 ul.wrap li.top_content_02_box:nth-child(2) {
    flex-direction: column;
    margin: -16.5vw 0 0 0;
    padding-top: 0;
  }

  #top_content_02 ul.wrap li.top_content_02_box:nth-child(2n+1) figure.top_content_02_img,
  #top_content_02 ul.wrap li.top_content_02_box:nth-child(2n) figure.top_content_02_img {
    left: 0;
    position: relative;
    top: 30vw;
    width: 90%;
  }

  #top_content_02 ul.wrap li.top_content_02_box .top_content_02_text h3 {
    align-items: flex-end;
  }

  #top_content_02 ul.wrap li.top_content_02_box .top_content_02_text h3 b {
    width: 23%;
    letter-spacing: 0;
    font-size: 14.5vw;
  }

  #top_content_02 ul.wrap li.top_content_02_box .top_content_02_text h3 span {
    font-size: 4.45vw;
    margin-left: 0;
    line-height: 1.55em;
    width: 77%;
  }

  #top_content_02 ul.wrap li.top_content_02_box .top_content_02_text p {
    margin-bottom: 0.75em;
  }
}

/******************************************************************************/
/********症例メニュー*************************************************************/
/******************************************************************************/
#top_content_03{
	background-color: #FFFFFF;
}

#top_content_03 #top_cases_tit {
  max-width: 1200px;
  margin: 120px auto 50px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 96%;
}

#top_content_03 .top_h2 {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  padding: 5px 50px 5px 0px;
  margin: 0 50px 0 0;
  border-right: 1px solid #c5c5c5;
}

#top_content_03 .top_h2 h2 {
  background-color: unset;
  color: #27B0CB;
  font-size: 80px;
  line-height: 1em;
  margin: 0;
  padding: 0px 0px;
}

#top_content_03 .top_h2 p {
  background-color: unset;
  color: #404040;
  line-height: 1em;
  font-size: 28px;
  margin: 10px 0 0px 0;
  padding-left: 5px;
  font-weight: 500;
}

#top_content_03 #top_cases_tit>p {
  font-size: 18px;
  letter-spacing: 1.25px;
  font-weight: 400;
}

#top_content_03 .wrap {
  width: 96%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

#top_content_03 .wrap li {
  width: 265px;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  background: #1c5e88;
  align-items: center;
  margin: 0 30px 30px 0;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

#top_content_03 .wrap li:hover {
  background-color: #27b0cb;
  background-image: -moz-linear-gradient(-30deg, #eafbff 0%, #d0f6fe 100%);
  background-image: -webkit-linear-gradient(-30deg, #eafbff 0%, #d0f6fe 100%);
  background-image: linear-gradient(150deg, #eafbff 0%, #d0f6fe 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eafbff', endColorstr='#d0f6fe', GradientType=1);
}

#top_content_03 .wrap li:hover h3,
#top_content_03 .wrap li:hover h3:before {
  border-color: color;
  color: #fff;
}

#top_content_03 .wrap li:nth-child(4n) {
  margin-right: 0;
}

#top_content_03 .wrap li a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
}

#top_content_03 .wrap li figure {
  width: 100%;
  text-align: center;
  padding: 45px 0 90px;
}

#top_content_03 .wrap li figure img {
  margin: 0 auto;
}

#top_content_03 .wrap li:hover img {
  //filter:invert(200%) sepia(1%) saturate(100%) hue-rotate(192deg) brightness(185%) contrast(100%);
  filter: opacity(0.4) drop-shadow(0 0 0 #fff);
}

#top_content_03 .wrap li h3 {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  color: #a0ebff;	
}

#top_content_03 .wrap li h3::before {
  border-left: 3px solid;
  border-top: 3px solid;
  border-color: #58c7ce;
  content: "";
  height: 9px;
  width: 9px;
  position: absolute;
  left: auto;
  top: auto;
  right: 20px;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  background-color: unset;
}

#top_content_03 .wrap li h3 span {
  font-size: 20px;
  line-height: 50px;
  display: block;
  width: 100%;
  text-align: center;
  position: relative;
  letter-spacing: 1px;
  font-weight: 600;
}

#top_content_03 .wrap li h3.lh2em span {
  line-height: 1.35em;
  font-size: 19px;
}

#top_content_03 .cases_btn {
  margin: 0 auto;
  display: block;
  text-align: center;
  max-width: 270px;
}

#top_content_03 .cases_btn a {
  width: 270px;
  height: 70px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 1.5px;
  color: #fff;
  position: relative;
  background-color: #27b0cb;
  background-image: -moz-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: -webkit-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: linear-gradient(150deg, #27b0cb 0%, #0793af 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#27b0cb', endColorstr='#0793af', GradientType=1);
}

#top_content_03 .cases_btn a:hover {
  opacity: 0.7;
}

#top_content_03 .cases_btn a::before {
  border-left: 2px solid;
  border-top: 2px solid;
  border-color: #ffffff;
  content: "";
  height: 6px;
  position: absolute;
  right: 15px;
  top: 45%;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 6px;
}

/*****768以下*****/
@media screen and (max-width:768px) {
  #top_content_03 {
    width: 96%;
    margin: 0 auto;
  }

  #top_content_03 #top_cases_tit {
    flex-direction: column;
    padding: 0 2%;
    margin: 12% 0 5%;
    width: 100%;
  }

  #top_content_03 #top_cases_tit .top_h2 {
    padding: 2% 2% 0% 2%;
    margin: 2% auto 0%;
    border-right: unset;
    width: 100%;
  }

  #top_content_03 #top_cases_tit .top_h2 h2 {
    font-size: 13vw;
  }

  #top_content_03 #top_cases_tit .top_h2 p {
    font-size: 6vw;
    margin: 10px auto 0;
  }

  #top_content_03 #top_cases_tit>p {
    font-size: 16px;
    padding: 5% 0 0;
    letter-spacing: 0.75px;
    font-weight: 400;
  }

  #top_content_03 .wrap li {
    width: 48%;
    margin: 0 4% 4% 0;
  }

  #top_content_03 .wrap li:nth-child(2n) {
    margin: 0 0% 4% 0;
  }

  #top_content_03 .wrap li figure {
    width: 100%;
    text-align: center;
    padding: 0% 0 15vw;
    min-height: 43.5vw;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
  }

  #top_content_03 .wrap li figure img {
    max-width: 60%;
  }

  #top_content_03 .wrap li h3 {
    bottom: 5vw;
    height: 5vw;
    margin-bottom: 0;
  }

  #top_content_03 .wrap li h3 span {
    font-size: 4vw;
    height: 5vw;
    letter-spacing: 0.3vw;
    display: flex;
    line-height: 5vw;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
  }

  #top_content_03 .wrap li h3 span::before {
    border-width: 2px;
    height: 6px;
    width: 6px;
  }

  #top_content_03 .wrap li h3.lh2em span {
    font-size: 4vw;
    height: 2.3em;
    letter-spacing: 0.3vw;
    line-height: 1.3em;
  }

  #top_content_03 .cases_btn,
  #top_content_03 .cases_btn a {
    width: 250px;
    height: 60px;
  }


}

/******************************************************************************/
/********サイトメニュー*************************************************************/
/******************************************************************************/
#top_content_04 {
  background: #EDFBFE;
  margin-top: 90px;
  padding-top: 30px;
  padding-bottom: 30px;
}

div#top_content_04 .top_h2 {
  margin-top: 0;
}

div#top_content_04 ul.wrap {
  width: 96%;
  display: flex;
  flex-direction: row;
  flex-wrap:nowrap;
  margin-top: 60px;
  align-content: center;
  justify-content: space-between;
  align-items: center;
  gap:20px;
}

div#top_content_04 ul.wrap li {
  width:calc((100% - 60px) / 4);
  margin:0;
    border-radius:12px;
    position:relative;
    overflow:hidden;
}

div#top_content_04 ul.wrap li:hover {
  opacity: 0.7;
}

div#top_content_04 ul.wrap li a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

div#top_content_04 ul.wrap li:nth-child(3n),
div#top_content_04 ul.wrap li:nth-child(n+4){
    margin:0;
}

div#top_content_04 ul.wrap li h3 {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  text-align: center;
  padding: 21px;
  background: #27b0cb;
  color: #fff;
  letter-spacing: 2px;
  font-size: 21px;
  border: none;
  z-index: 101;
}

div#top_content_04 ul.wrap li figure,
div#top_content_04 ul.wrap li figure img {
  width: 100%;
}

div#top_content_04 ul.wrap li p.btn {
  position: absolute;
  display: flex;
  width: 200px;
  z-index: 99;
  bottom: 20px;
  text-align: center;
  padding: 15px 5px;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  background-color: #27b0cb;
  background-image: -moz-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: -webkit-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: linear-gradient(150deg, #27b0cb 0%, #0793af 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#27b0cb', endColorstr='#0793af', GradientType=1);
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  left: 50%;
  transform: translateX(-50%);
}

div#top_content_04 ul.wrap li p.btn::before {
  border-left: 2px solid;
  border-top: 2px solid;
  border-color: #ffffff;
  content: "";
  height: 6px;
  position: absolute;
  right: 15px;
  -moz-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  width: 6px;
}


/*****768以下*****/
@media screen and (max-width:768px) {
  #top_content_04 {
    margin-top: 12%;
    padding-top: 10%;
    padding-bottom: 7%;
  }

  div#top_content_04 .top_h2 {
    margin-bottom: 8%;
  }

  div#top_content_04 ul.wrap {
    display:flex;
    flex-wrap:wrap;
    gap:4%;
	justify-content: space-around;
  }

  div#top_content_04 ul.wrap li {
    width: 45%;
    margin: 0 0% 6% 0;
    height: 44vw;
    overflow: hidden;
  }

  div#top_content_04 ul.wrap li:nth-child(3n),
  div#top_content_04 ul.wrap li:nth-child(n+4) {
    margin: 0 0% 6% 0;
  }

  div#top_page .wrap {
    width: 94%;
  }

  div#top_content_04 ul.wrap li figure {
    position: absolute;
    top: 1.5%;
  }

  div#top_content_04 ul.wrap li figure img {
    margin-top: 6%;
  }

  div#top_content_04 ul.wrap li p.btn {
    width: 85%;
    padding: 4% 1% 4.65%;
    font-size: 3.15vw;
    bottom: 5.5%;
  }

  div#top_content_04 ul.wrap li h3 {
    padding: 5% 2%;
    font-size: 4.2vw;
    font-size: 3.85vw;
  }
}

/******************************************************************************/
/********アクセスエリア************************************************************/
/******************************************************************************/
#top_content_05 {
  padding: 100px 0 90px;
}

#top_content_05 .wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-evenly
}

#top_content_05 .top_content_05_text {
  width: 50%;
}

#top_content_05 .top_gmap {
  width: 45%;
}

#top_content_05 .top_content_05_text .logo {
  width: 100%;
  text-align: center;
}

#top_content_05 .top_content_05_text p {
  text-align: center;
  font-size: 14px;
  color: #545454;
  letter-spacing: 0.6px;
  line-height: 1.5em;
}

#top_content_05 .top_content_05_text .logo a {
  display: inline-block;
  margin: 0 auto 0.5em;
}

#top_content_05 .top_content_05_text {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

#top_content_05 .top_content_05_text ul {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-between;
  align-items: center;
  margin: 0.685em 0 0.485em;
}

.top_content_05_text ul li {
  width: 49%;
}

div#top_content_05 div.top_gmap {
  width: 45%;
}

#top_content_05 .top_content_05_text .time_table {
  width: 100%;
}

#top_content_05 .top_content_05_text .time_table ul {
  display: flex;
  width: 100%;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  margin: 0;
  align-items: center;
  border-bottom: solid 1px #E5E5E5;
  padding: 12px 0;
}

#top_content_05 .top_content_05_text .time_table ul li {
  width: 11%;
  text-align: center;
  padding: 1.5px;
}

#top_content_05 .top_content_05_text .time_table ul li:nth-child(1) {
  text-align: left;
  min-width: 7.6em;
  letter-spacing: 1.95px;
  white-space: nowrap;
}

#top_content_05 .top_content_05_text .time_table ul li:nth-child(1) span.kara {
  margin: 0;
  letter-spacing: 2.5px;
}

#top_content_05 .top_content_05_text .time_table ul li.maru {
  color: #0CB6C2;
}

#top_content_05 .top_content_05_text .time_table ul li.sankaku {
  color: #E84C90;
}

#top_content_05 .top_content_05_text .time_table ul li br {
  display: none;
}

#top_content_05 .top_content_05_text .time_table p {
  text-align: left;
  margin-top: 13px;
  font-size: 16px;
  color: #545454;
  letter-spacing: 1.65px;
}

#top_content_05 .top_content_05_text .time_table p span {
  color: #E84C90;
  margin-right: 5px;
}

#top_content_05 .top_content_05_text .time_table p span.kara {
  color: #333;
  margin: 0;
  letter-spacing: 2.5px;
}

/*****768以下*****/
@media screen and (max-width:768px) {
  #top_content_05 {
    padding: 10% 2% 8%;
  }

  #top_content_05 .wrap {
    flex-direction: column;
  }

  #top_content_05 .wrap .top_content_05_text,
  #top_content_05 .wrap .top_gmap {
    width: 100%;
  }

  #top_content_05 .top_content_05_text ul {
    flex-direction: column;
  }

  #top_content_05 .top_content_05_text ul li {
    width: 100%;
  }

  #top_content_05 .top_content_05_text ul li:nth-child(3) {
    margin-bottom: 4%;
    margin-top: 4%;
  }

  #top_content_05 .top_content_05_text .time_table {
    margin-bottom: 3%;
  }

  #top_content_05 .top_content_05_text .time_table ul {
    padding: 1.2% 2%;
  }

  #top_content_05 .top_content_05_text .time_table ul li {
    padding: 1%;
  }

  #top_content_05 .wrap .top_gmap {
    margin-top: 8%;
    margin-bottom: 5%;
    min-height: 0;
    height: 90vw;
    max-height: 450px;
    position: relative;
  }

  #top_content_05 .wrap .top_gmap iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
}

/*****370以下*****/
@media screen and (max-width:370px) {
  #top_content_05 .top_content_05_text .time_table ul li:nth-child(1) {
    min-width: 29%;
    width: 29%;
  }

  #top_content_05 .top_content_05_text .time_table ul li {
    width: 8.85%;
  }

  #top_content_05 .top_content_05_text .time_table ul li {
    font-size: 5.2vw;
  }

  #top_content_05 .top_content_05_text .time_table ul li br {
    display: inline;
  }
}

/******************************************************************************/
/********お問い合わせ************************************************************/
/******************************************************************************/
#top_contact_area {
  display: flex;
  padding: 70px 0;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  background-image: url(images/contact_bg.jpg);
}

#content #top_contact_area h2 {
  color: #fff;
  background: none;
  font-size: 30px;
  letter-spacing: 3px;
  margin: 0px 0 3px;
}

#content #top_contact_area h3 {
  color: #fff;
  background: none;
  font-size: 18px;
  text-align: center;
  margin-bottom: 24px;
  line-height: 1.55em;
  letter-spacing: 1px;
}

#content #top_contact_area ul {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 834px;
}

#content #top_contact_area ul li {
  width: 48%;
}

#content #top_contact_area ul li ul {
  flex-direction: column;
  width: 100%;
  padding: 0;
}

#content #top_contact_area ul li ul li {
  width: 100%;
}

#content #top_contact_area ul li ul li:nth-child(2) {
  margin-top: 3%;
}

/*****768以下*****/
@media screen and (max-width:768px) {
  #content #top_contact_area h2 {
    font-size: 5.9vw;
    margin-bottom: 2%;
    margin-top: 1.5%;
    letter-spacing: 0.75vw;
  }

  #content #top_contact_area h3 {
    font-size: 3.85vw;
  }

  #content #top_contact_area ul {
    flex-direction: column;
    padding: 0 3%;
  }

  #content #top_contact_area ul li {
    width: 100%;
  }

  #content #top_contact_area ul li:nth-child(3),
  #content #top_contact_area ul li ul li:nth-child(2) {
    margin-top: 5%;
  }

  #top_contact_area.main_sita {
    margin-bottom: -20vw;
  }
}

/**********************************************************/
/********バナーエリア******************************************/
/**********************************************************/
#top_content_06 .wrap {
  display: flex;
  margin: 50px auto;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1100px;
}

/*****768以下*****/
@media screen and (max-width:768px) {
  div#top_content_06 .wrap {
    flex-direction: column;
    max-width: 96%;
    margin: 5% auto 0;
  }

  div#top_content_06 .wrap li {
    margin-bottom: 5%;
  }
}


#main_visual_in {
/*   display: flex; */
  position: relative;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: stretch;
padding-top: 6rem;
}

#main_visual_in div.main_text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  height: 100%;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
}

#main_visual_in div.main_text img {
  max-width: 881px;
  margin: 0;
  width: 50%;
}

#main_visual_in div.main_text span {
  display: block;
  margin: 0 auto 1vw;
  max-width: 1480px;
  width: 90%;
}

@media screen and (max-width: 768px) {
  #top_content_03 .wrap li {
    width: auto;
  }
	#main_visual_in {
padding-top: 2rem;
}
}

@media screen and (max-width:768px) {

  #top_content_03 .wrap {
    display: flex;
    flex-wrap: wrap;
  }

  #top_content_03 .wrap>a {
    width: 42%;
    margin: 0 2% 2% 0;
    display: block;
  }

  #top_content_03 .wrap>a:nth-child(3n) {
   margin: 0 2% 2% 0;
  }

  #top_content_03 .wrap li {
    width: 100%;
  }

}

/*****おすすめプランエリア*****/
.recommend_plan h2 {
  text-align: center;
  background: linear-gradient(135deg, #00ddd0 32%, #0074e0 100%);
}

.recommend_plan {
  padding: 50px 0;
  background: #d8f8ff;
  text-align: center;
  margin-top: 20px;	
}

.recommend_plan h2 {
  font-size: 36px !important;
  color: #2aa0b4;
  margin-bottom: 10px;
}

.recommend_plan .sub {
  text-align: center;
  margin-bottom: 40px;
  font-size: 17px;
}

.recommend_plan .sub_bottom{
  margin-bottom: 0 !important;
}

.plan_wrap {
  display: flex;
  gap: 30px;
  justify-content: center;
  flex-wrap: wrap;
}

.plan_card {
  width: 300px;
  background: #fff;
  padding: 25px;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  text-align: left;
}

.plan_card h3 {
  font-size: 22px !important;
  margin-bottom: 10px;
  color: #333;
  position: relative;
  padding-bottom: 10px;
  text-align: center;
}

.plan_card h3:after {
  content: "";
  display: block;
  width: 40px;
  height: 2px;
  background: #3aa5b6;
  margin: 8px auto 0;
}

.plan_card h3 span {
  display: block;
  font-size: 14px;
  color: #666;
  font-weight: normal;
  margin-top: 4px;
  text-align: center;
}

.plan_card p {
  font-size: 14px;
  line-height: 1.7;
}

.plan_note {
  text-align: center;
  margin-top: 30px;
  font-size: 13px;
  color: #666;
}

.recommend_plan .btn {
    margin: 0 auto;
    display: block;
    text-align: center;
    max-width: 270px;
	padding-top: 30px;
}

.recommend_plan .btn a {
  width: 270px;
  height: 70px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 1.5px;
  color: #fff;
  position: relative;
  background-color: #27b0cb;
  background-image: -moz-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: -webkit-linear-gradient(-30deg, #27b0cb 0%, #0793af 100%);
  background-image: linear-gradient(150deg, #27b0cb 0%, #0793af 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#27b0cb', endColorstr='#0793af', GradientType=1);
}

.recommend_plan .btn a::before {
    border-left: 2px solid;
    border-top: 2px solid;
    border-color: #ffffff;
    content: "";
    height: 6px;
    position: absolute;
    right: 15px;
    top: 45%;
    -moz-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 6px;
}

.recommend_plan .btn a:hover{
opacity: 0.7;
}

@media screen and (max-width:768px){
  .recommend_plan h2{
    color:#fff !important;
  }
}

/*****こんなお悩みありませんかエリア*****/
.top_worry_area{
  max-width: 1200px;
  margin: 0 auto 80px;
  padding: 0 20px;
}

.top_worry_area img{
  display: block;
  margin: 0 auto;
}

.worry_img img{
	box-shadow: 0 0 15px 5px rgba(0, 0, 0, 0.5);
}

.approach_ttl{
	padding-bottom: 20px;
}
.approach_img img{
 border-radius:2%;
}

.block_catch_list{
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}

.block_image_catch_list_wrapper{
  max-width: 1000px;
  margin: 0 auto 50px;
}

.top_worry_area .block_image_catch_list_wrapper{
  max-width: 1100px;
}

.conts{
  max-width: 700px;
  margin: 40px auto 0;
  text-align: center;
}

ol.block_catch_list {
  overflow: hidden;
  padding: 1em;
}

li.block_catch_list_li {
  list-style: none;
  margin: 0 0 4px;
  padding: 10px 20px 10px 44px;
  background: url("/redcircle-test/wp-content/themes/amaterasu/images/check-icon.png") no-repeat left center;
  background-size: 30px 30px;
  font-size: 20px;
  border-bottom: dotted 2px #cfcfcf;
}

ol.block_image_catch_list_list {
  margin-top: 0;
}

.approach_text_box{
	width:100% ;
	padding: 0.5em 1em;
    margin: 2em 0;
    color: #00BCD4;
    background: #e4fcff;/*背景色*/
    border-top: solid 6px #1dc1d6;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/
}

.approach_text {
  max-width: 600px;
  margin: 40px auto 40px !important; /* 上に余白＋中央寄せ */
  text-align: left;
  line-height: 1.8;
}

@media screen and (max-width:768px) {
	.top_worry_area{
    padding-top: 90px;
  }
	
  div.block_image_catch_list_wrapper {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
  }

  ol.block_image_catch_list_list {
    width: 60%;
  }

  figure.block_catch_img {
    width: 40%;
  }
}
/********選ばれる理由04ここから****************************************/
@media screen and (max-width:768px) {
  #top_content_02 ul.wrap li.top_content_02_box:nth-child(4) {
    flex-direction: column;
    flex-wrap: nowrap;
    margin: -16.5vw 0 0 0;
    padding-top: 0;
  }

  #top_content_02 ul.wrap li.top_content_02_box:nth-child(4) .top_content_02_text {
    width: 100%;
    padding: 35% 5% 5% 5%;
    box-sizing: border-box;
  }

  #top_content_02 ul.wrap li.top_content_02_box:nth-child(4) figure.top_content_02_img {
    left: 0;
    position: relative;
    top: 30vw;
    width: 90%;
  }
}
/********選ばれる理由04ここまで****************************************/