/* Scss Document */
/* color */
/* media queries*/
/*#titleback .inner h2 {
  color: #47463b; }
  @media screen and (max-width: 899px) {
    #titleback .inner h2 {
      top: 5.5rem; } }

.main_text .main_title .ruby {
  background: #F3DE28;
  font-size: 1rem;
  padding: .2rem;
  border-radius: .5rem;
  width: 50%;
  color: #47463b;
  margin: 0 auto .5rem auto; }
  @media screen and (max-width: 640px) {
    .main_text .main_title .ruby {
      width: 80%; } }*/

.today_bana {
  padding: 2rem 0; }

.link_box ul {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
}
.link_box ul li {
	border-bottom: 1px solid #fff;
		width: 33.3333333333% !important;
}
@media screen and (max-width: 899px) {
		.link_box ul li {
				width: 50%;
		}
}
@media screen and (max-width: 480px) {
		.link_box ul li {
				width: 100% !important;
		}
}

/*========== end .link_box ==========*/

.price {
  margin: 3rem 5% 0;
  font-size: 1.2rem; }
  .price h5 {
    text-align: left; }
    .price h5 span {
      background: #F3DE28;
      font-size: 1rem;
      padding: .2rem .5rem;
      border-radius: 1rem;
      width: 20%;
      color: #47463b;
      margin-left: 1rem; }
      @media screen and (max-width: 767px) {
        .price h5 span {
          display: block;
          margin: 1rem auto;
          width: 100%; } }
  .price table {
    border-collapse: collapse;
    width: 100%;
    margin: 0 auto 1rem; }
    .price table:nth-of-type(2) {
      margin: 3rem auto; }
    .price table tr {
      border-bottom: #e2e2e2 1px solid;
      border-right: #e2e2e2 1px solid; }
      .price table tr th {
        background: #47463b;
        color: #fff;
        padding: 0.5rem;
        text-align: center;
        width: 30%; }
        .price table tr th span {
          display: block;
          font-size: .8rem; }
        .price table tr th.bo-r {
          border-right: 1px solid white;
          width: 20%; }
        .price table tr th.bg1 {
          background: #507BB8;
          color: #fff; }
        .price table tr th.bg2 {
          background: #F2DD28;
          color: #47463b; }
    .price table td {
      padding: .5rem 1rem;
      border-top: #e2e2e2 1px solid;
      border-left: #e2e2e2 1px solid; }
      @media screen and (max-width: 767px) {
        .price table td {
          padding: .5rem; } }
      .price table td.center {
        text-align: center; }
      .price table td.bg1 {
        background: #E3EDFC; }
      .price table td.bg2 {
        background: #FDF6CD; }

.hearing {
  margin: 3rem 5% 0;
  background: rgba(249, 239, 170, 0.35);
  position: relative;
  padding: 0.5rem 1rem 3rem;
  max-width: 100%;
  color: #47463b;
  margin-bottom: 2rem;
  /*h5 {
  	font-weight: bold;
  	font-size: 1.5rem;
  	text-align: center;
  }*/ }
  .hearing h5 {
    border-radius: 22px;
    font-size: 1rem;
    padding: 0.5rem;
    background-color: #47463b;
    color: #fff; }
    .hearing h5.attent {
      background: #F3DE28;
      margin: 1rem auto;
      padding: .5rem;
      text-align: center;
      color: #47463b;
      font-size: 1.2rem;
      font-weight: bold;
      border-radius: 1.5rem;
      width: 80%; }
  .hearing ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 auto;
    align-items: stretch; }
    .hearing ul li {
      background: #fff;
      border-radius: 8px;
      padding: 1rem; }
      @media screen and (max-width: 767px) {
        .hearing ul li {
          margin: 0 auto 1rem; } }
  .hearing ol {
    margin: 0 auto 1rem; }
    .hearing ol li {
      width: 100%;
      margin-bottom: 5px;
      text-align: left;
      font-weight: bold;
      padding: 0 0 0 1rem;
      text-indent: -1rem; }
    .hearing ol span {
      display: block;
      padding-left: 1rem;
      font-size: 0.7rem; }
  .hearing li {
    width: calc((100% - 30px) / 3);
    margin-bottom: 1rem; }
    @media screen and (max-width: 767px) {
      .hearing li {
        width: 80%;
        margin: 0 auto 1rem; } }
    @media screen and (max-width: 480px) {
      .hearing li {
        width: 100%; } }
  .hearing p {
    font-size: 1.5rem;
    margin: 2rem 0 0 0;
    text-align: center; }
  .hearing .big {
    font-size: 120%; }

.plan {
  margin: 3rem 5% 0; }
  .plan h5 {
    background: #F2C328;
    border-radius: 1rem;
    padding: .3rem;
    width: 70%;
    color: #47463b;
    font-weight: bold;
    font-size: 1.2rem;
    text-align: center;
    margin: 4rem auto 1rem auto; }
    @media screen and (max-width: 767px) {
      .plan h5 {
        width: 90%; } }
  .plan .big {
    font-size: 1.2rem; }
  .plan table {
    border-collapse: collapse;
    width: 100%;
    margin: 2rem auto; }
    .plan table tr {
      border-top: #e2e2e2 1px solid;
      border-left: #e2e2e2 1px solid; }
      .plan table tr th {
        background: #507BB8;
        color: #fff;
        padding: .5rem 1rem;
        border-bottom: #e2e2e2 1px solid;
        border-right: #e2e2e2 1px solid;
        width: 30%;
        font-size: 1.1rem;
        text-align: center; }
      .plan table tr td {
        padding: .5rem 2rem;
        font-size: 1.3rem;
        font-weight: bold;
        border-bottom: #e2e2e2 1px solid;
        border-right: #e2e2e2 1px solid; }

/*.merit {
  margin: 0 3%;
  background: rgba(249, 239, 170, 0.35);
  position: relative;
  padding: 2rem 1rem 1rem;
  max-width: 100%;
  color: #47463b; }
  .merit h5 {
    border-radius: 22px;
    font-size: 1rem;
    padding: 0.5rem;
    background: #47463b;
    color: #fff; }
  .merit ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    text-align: center;
    margin: 0 auto;
    align-items: stretch; }
    .merit ul li {
      background: #fff;
      border-radius: 8px;
      padding: 1rem; }
      @media screen and (max-width: 767px) {
        .merit ul li {
          margin: 0 auto 1rem; } }
  .merit ol {
    margin: 0 auto 1rem; }
    .merit ol li {
      width: 100%;
      padding: 0;
      margin-bottom: 5px;
      text-align: left;
      font-weight: bold; }
    .merit ol span {
      display: block;
      padding-left: 1rem;
      font-size: 0.7rem; }
  .merit li {
    width: calc((100% - 30px) / 3);
    margin-bottom: 1rem; }
    @media screen and (max-width: 767px) {
      .merit li {
        width: 80%;
        margin: 0 auto 1rem; } }
    @media screen and (max-width: 480px) {
      .merit li {
        width: 100%; } }*/



.merit_up {
		margin: 0 3%;
		background: rgba(249, 239, 170, 0.35);
		position: relative;
		padding: 2rem 1rem 1rem;
		max-width: 100%;
		color: #47463b;
}
.merit_up h5 {
		border-radius: 22px;
		font-size: 1rem;
		padding: 0.5rem;
		background: #47463b;
		color: #fff;
}
.merit_up ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		text-align: center;
		margin: 0 auto;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
}
.merit_up ul li {
		background: #fff;
		border-radius: 8px;
		padding: 1rem;
}
@media screen and (max-width: 767px) {
		.merit_up ul li {
				margin: 0 auto 1rem;
		}
}
.merit_up ol {
		margin: 0 auto 1rem;
}
.merit_up ol li {
		width: 100%;
		padding: 0;
		margin-bottom: 5px;
		text-align: left;
		font-weight: bold;
}
.merit_up ol span {
		display: block;
		padding-left: 1rem;
		font-size: 0.7rem;
}
.merit_up li {
		width: calc((100% - 30px) / 3);
		margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
		.merit_up li {
				width: 80%;
				margin: 0 auto 1rem;
		}
}
@media screen and (max-width: 480px) {
		.merit_up li {
				width: 100%;
		}
}

.about_merit {
  margin: 3rem 5% 0 5%; }
  .about_merit .merit_title {
    padding: .5rem;
    border-bottom: #F3DE28 3px solid;
    font-weight: bold;
    font-size: 1.1rem; }
    .about_merit .merit_title span {
      font-weight: bold;
      font-size: .9rem;
      display: block; }
      @media screen and (max-width: 640px) {
        .about_merit .merit_title span {
          display: inline;
          padding-right: 1rem; } }
  .about_merit .merit_item {
    display: flex;
    margin-bottom: 1rem; }
    @media screen and (max-width: 640px) {
      .about_merit .merit_item {
        display: block;
        margin-bottom: 2rem; } }
    .about_merit .merit_item .box {
      padding: .5rem; }
      @media screen and (max-width: 640px) {
        .about_merit .merit_item .box:first-of-type {
          text-align: center; } }
      .about_merit .merit_item .box:last-of-type {
        padding-top: 1.5rem; }
        @media screen and (max-width: 640px) {
          .about_merit .merit_item .box:last-of-type {
            padding-top: .5rem; } }
  .about_merit .nayami_box ul li.none {
    text-align: center;
    margin: 2rem 0 0 0; }
    .about_merit .nayami_box ul li.none:before {
      content: ""; }

.about {
  margin: 3rem 5% 0; }
  @media screen and (max-width: 480px) {
    .about {
      margin: 3rem 0 0; } }
  .about h5 {
    font-size: 1.2rem;
    margin: 2rem 0;
    text-align: center; }
    .about h5 span {
      background: #F3DE28;
      font-size: 1rem;
      padding: .2rem .5rem;
      border-radius: 1rem;
      width: 20%;
      color: #47463b;
      margin-left: 1rem; }
      @media screen and (max-width: 767px) {
        .about h5 span {
          display: block;
          margin: 1rem auto;
          width: 100%; } }
  .about .about_item {
    margin: 0 0 .2rem 0;
    display: flex;
    align-items: center;
    background: #150D60; }
    @media screen and (max-width: 767px) {
      .about .about_item {
        display: block; } }
    .about .about_item .title {
      color: #fff;
      padding: 1rem;
      width: 20%;
      vertical-align: middle;
      text-align: center; }
      @media screen and (max-width: 767px) {
        .about .about_item .title {
          width: 100%;
          display: block; } }
    .about .about_item .text {
      padding: 1rem;
      background: #F5F5F5; }
      .about .about_item .text span {
        display: block;
        margin-top: .5rem;
        font-size: .8rem;
        text-decoration: underline; }
      @media screen and (max-width: 767px) {
        .about .about_item .text {
          width: 100%; } }

h6.big_text {
  font-size: 1.2rem;
  text-align: center;
  margin: 3rem auto;
  color: #F26628;
  text-decoration: underline; }
  h6.big_text span {
    display: block;
    margin-top: .2rem;
    text-align: center;
    font-size: 1rem; }

@media screen and (max-width: 767px) {
  #service h4 {
    width: 100%; } }
#service .service_btn {
  margin: 0 5%; }

@media screen and (max-width: 767px) {
  .img-fluid {
    margin: 0 auto; } }
.img-fluid img {
  display: block;
  margin: 0 auto;
  max-width: 100%; }




/* === 2024新規 === */
.scanning_head {
		background: url("../img/scanning_head_bg.jpg") no-repeat;
		background-position: 50% center;
		background-size: cover;
}
.box_qa .item {
		width: 32.6666666667%;
}
.box_qa .item:nth-of-type(1) .ques {
		background: url("../img/box_ques_ico01.svg") no-repeat bottom center;
		background-size: 10rem;
}
.box_qa .item:nth-of-type(1) .ans {
		background: url("../img/box_ans.svg") no-repeat bottom center;
		background-size: 11rem;
}
.box_qa .item:nth-of-type(2) .ques {
		background: url("../img/box_ques_ico02.svg") no-repeat bottom center;
		background-size: 10rem;
}
.box_qa .item:nth-of-type(2) .ans {
		background: url("../img/box_ans.svg") no-repeat bottom center;
		background-size: 11rem;
}
.box_qa .item:nth-of-type(3) .ques {
		background: url("../img/box_ques_ico03.svg") no-repeat bottom center;
		background-size: 10rem;
}
.box_qa .item:nth-of-type(3) .ans {
		background: url("../img/box_ans.svg") no-repeat bottom center;
		background-size: 11rem;
}

.merit {
		margin: 3rem 0;
}
.merit .merit_title {
		padding: 0.5rem;
		border-bottom: #F3DE28 3px solid;
		font-weight: bold;
		font-size: 1.1rem;
}
.merit .merit_title span {
		font-weight: bold;
		font-size: 0.9rem;
		display: block;
}
@media screen and (max-width: 640px) {
		.merit .merit_title span {
				display: inline;
				padding-right: 1rem;
		}
}
.merit .merit_item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin-bottom: 1rem;
}
@media screen and (max-width: 640px) {
		.merit .merit_item {
				display: block;
				margin-bottom: 2rem;
		}
}
.merit .merit_item .box {
		padding: 0.5rem;
}
@media screen and (max-width: 640px) {
		.merit .merit_item .box:first-of-type {
				text-align: center;
		}
}
.merit .merit_item .box:last-of-type {
		padding-top: 1.5rem;
}
@media screen and (max-width: 640px) {
		.merit .merit_item .box:last-of-type {
				padding-top: 0.5rem;
		}
}
.scanning_case {
		margin: 3rem 0;
		background: rgba(249, 239, 170, 0.35);
		padding: 1rem;
}
.scanning_case .title {
		font-weight: bold;
		padding: 0.5rem;
		display: table-cell;
		vertical-align: middle;
		font-size: 1.1rem;
}
.scanning_case .text {
		margin: 1rem auto;
		background: #fff;
		padding: 1rem;
		width: 100%;
}
.scanning_case .text .title {
		font-weight: bold;
		padding: 0.5rem;
		font-size: 1.1rem;
}
.scanning_case .text .text_box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
@media screen and (max-width: 1000px) {
		.scanning_case .text .text_box {
				display: block;
		}
}
.scanning_case .text .text_box .explain {
		padding: 0.5rem 0;
		width: 90%;
}
.scanning_case .text .text_box .text_only {
		border-top: #47463b 1px solid;
		padding: 1rem 0 0 0;
		margin: 1rem 0 0 0;
}
.scanning_case .text .text_box .text_only p {
		padding: 0 0 1rem 0;
}
.scanning_case .text .text_box .img {
		background: #fff;
		text-align: center;
		-ms-flex-item-align: center;
		    -ms-grid-row-align: center;
		    align-self: center;
}
@media screen and (max-width: 1000px) {
		.scanning_case .text .text_box .img {
				margin: 0.8rem 0 0 0;
		}
}