/*
 Theme Name:   Jinbo Orthodontic Office
 Theme URI:    www.jinbo-ortho.com
 Description:  Jinbo Orthodontic Office
 Author:       Jinbo Orthodontic Office
 Author URI:   http://www.jinbo-ortho.com
 Version:      2.0.0
 Tags:
 Text Domain:  Jinbo Orthodontic Office
*/

body.admin-bar .navbar {
	top:32px;
}

body {
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.navbar {
	margin-left: auto;
	margin-right:auto ;
	padding-top: 0;
	padding-bottom: 0;;
 	/*border-bottom: 5px solid #d9b66b;*/
	border-bottom: 5px solid #d4caa7;
	background-color: transparent;
	transition: all 0.4s ease-in-out; /* 滑らかに変化させる */
}

.navbar.scrolled {
	box-shadow: 0 2px 5px rgba(0,0,0,0.2); /* オプション：影を付ける */
}

.navbar-brand {
    width: 280px;
}

.navbar-brand p {
  color: #656565;
  font-size: 10px;
  margin: 6px 0 0 6px;
}

.navbar-toggler {
	margin-right: 7px;
	padding: 2px;
	background: #a8936d;
  border-radius: 3px;
}

.navbar-toggler:focus {
	box-shadow:none;
}

.navbar-toggler-icon {
	width:38px;
	height: 38px;
	background: #a8936d;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}


.nav-item {
  text-align: center;
  border-bottom: 1px solid #efefef;
}

.nav-item a.nav-link {
  padding-top: 15px;
  padding-bottom: 15px;
}

.nav-item.tel {
  padding-top: 15px;
  padding-bottom: 15px;
}
.nav-item.tel {
  background:#e5cca3 ;
}

.nav-item.tel span {
  margin-right: 10px;
}

.top_main {
  background:#fff9f0 ;
}

.top_main_box {
  position: relative;
}

.top_main img {
  width: 100%;;
}

.top_main img.top_main_pc {
  display: none;
}

.top_main .main_copy {
  position: absolute;
  bottom: 20px;
  background: rgba(255, 255, 255, 0.85);
  display: block;
  width: 74%;
  right: 15px;
  padding: 10px;
  z-index: 100;
}

.top_main .main_copy h2 {
  font-size: 5.6vw;
  font-weight: 300;
}

.top_main .main_copy h1 {
  font-size: 7.2vw;
  font-weight: 300;
  border-top:1px solid #a8936d ;
  margin-bottom: 0;;
  margin-top: 0;
}
.top_main .main_copy h1 span {
  font-size: 4.3vw;
}

.top_navi_01 {
  background:#fff9f0 ;
}

.top_navi_01 .top_navi_01_box {
  background: url('images/sub_navi_01_back.png');
  background-repeat: repeat;
  background-position: center;;
}

.top_navi_01 .top_navi_01_box ul {
  margin: 20px 0;
  padding: 0;
  text-align: center;
}

.top_navi_01 .top_navi_01_box ul li {
  list-style: none;
  margin-bottom: 16px;
}

.top_navi_01 .top_navi_01_box ul li a {
  display: inline-block;
  background: #f4e9d9;
  width: 80%;
  padding: 15px 20px;
  position: relative;
  color: #635847;
  box-shadow: 2px 2px 0px 0px rgba(168, 147, 109, 0.9);
  text-decoration: none;
  transition: .5s;
}

.top_navi_01 .top_navi_01_box ul li a:hover {
  background: #a8936d;
  color: #fff;
}

.top_navi_01 .top_navi_01_box ul li.calendar a::before {
  content: '';
  position: absolute;
  display: block;
  background: url('images/icon_calendar.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 36px;
  height: 35px;
  top: 15%;
  left: calc(50% - 130px);
}

.top_navi_01 .top_navi_01_box ul li.reservation a::before {
  content: '';
  position: absolute;
  display: block;
  background: url('images/icon_reservation.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 36px;
  height: 35px;
  top: 15%;
  left: calc(50% - 130px);
}

.top_navi_01 .top_navi_01_box ul li.firsttime a::before {
  content: '';
  position: absolute;
  display: block;
  background: url('images/icon_firsttime.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 25px;
  height: 35px;
  top: 15%;
  left: calc(50% - 125px);
}

.top_navi_01 .top_navi_01_box ul li a i {
  position: relative;
  font-style: normal;
}

.top_navi_01 .top_navi_01_box ul li a::after {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #635847;
	-webkit-transition-duration: 0.5s;
	transition-duration: 0.5s;
  top: 40%;
  right:  20px;
}

.top_navi_01 .top_navi_01_box ul li a:hover::after {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #fff;
}

.info {
  padding-top: 40px;
  padding-bottom: 40px;
  background: #ffe6c5;
}

.info h2 {
  text-align: center;
  color: #635847;
}

.info ul {
  margin-top: 20px;
  padding: 0;;
}

.info ul li {
  list-style: none;
  margin-bottom: 12px;;
  position: relative;
  color: #ababab;
  padding-left: 28px;
}

.info ul li::before {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #635847;
  top:28%;
  left: 0;
}

.info ul li a {
  color: #000;
  text-decoration: none;
  transition: .5s;
}

.info ul li a:hover {
  color: #d9b66b;
  text-decoration: none;
}

.instagram {
  margin-top: 20px;
  text-align: center;
  height: 40px;
}

.instagram a,
.instagram_02 a {
  color: #000;
  text-decoration: none;
  transition: .5s;
  position: relative;
}

.instagram a:hover,
.instagram a:hover {
  color: #d9b66b;
  text-decoration: none;
}

.instagram a::before {
  content: '';
  position: absolute;
  display: block;
  background: url('images/icon_instagram.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 36px;
  height: 36px;
  top: -30%;
  left: calc(50% - 118px);
}

.instagram_02 {
  margin-top: 20px;
  text-align: center;
  height: 40px;
  padding-bottom: 50px;
  border-bottom: 14px solid #f4e9d9;
}

.instagram_02 a {
  padding-left: 50px;
}

.instagram_02 a::before {
  content: '';
  position: absolute;
  display: block;
  background: url('images/icon_instagram.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 36px;
  height: 36px;
  top: -30%;
  left: calc(50% - 120px);
}


.about {
  padding-top: 50px;
  padding-bottom: 50px;
  background: url('images/top_about_back.jpg');
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
}

.about h2,
.method h2,
.age h2,
.top_step h2,
.rowtype h2,
.top_blog h2 {
  text-align: center;
  color:#635847 ;
  border-bottom: solid #f4e9d9 14px ;
  padding-bottom: 12px;
  padding-left: 30px;
  padding-right: 30px;
  display: inline-block;
  margin-bottom: 40px;
}

.about p {
  line-height: 1.6em;
}

.about .feature {
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
  border: 1px solid #a8936d ;
  background: #fff;
  width: 94%;
  padding:20px;
}

.about .feature h3 {
  color:#635847;
  font-size: 22px;
  text-align: center;
}

.about .feature ul {
  margin: 25px 0 0 0;
  padding: 0;
}

.about .feature ul li {
  list-style: none;
  border-bottom: 1px solid #a8936d;
  position: relative;
  margin-bottom: 16px;
  font-size: 3.5vw;
}

.about .feature ul li:last-child {
  margin-bottom: 0;
}

.about .feature ul li.feature_01,
.about .feature ul li.feature_03,
.about .feature ul li.feature_05,
.about .feature ul li.feature_06 {
  padding-bottom: 26px;
  padding-left: 95px;
  padding-top: 20px;;
}

.about .feature ul li.feature_01::before{
  position: absolute;
  display: block;
  content: '';
  background: url('images/icon_feature_01.svg');
  background-size: cover;
  width: 80px;
  height: 60px;
  top:0;
  left: 0;
}

.about .feature ul li.feature_02,
.about .feature ul li.feature_04 {
  padding-bottom: 16px;
  padding-left: 95px;
  padding-top: 6px;;
}

.about .feature ul li.feature_02::before{
  position: absolute;
  display: block;
  content: '';
  background: url('images/icon_feature_02.svg');
  background-size: cover;
  width: 80px;
  height: 60px;
  top:0;
  left: 0;
}

.about .feature ul li.feature_03::before{
  position: absolute;
  display: block;
  content: '';
  background: url('images/icon_feature_03.svg');
  background-size: cover;
  width: 80px;
  height: 60px;
  top:0;
  left: 0;
}

.about .feature ul li.feature_04::before{
  position: absolute;
  display: block;
  content: '';
  background: url('images/icon_feature_04.svg');
  background-size: cover;
  width: 80px;
  height: 60px;
  top:0;
  left: 0;
}

.about .feature ul li.feature_05::before{
  position: absolute;
  display: block;
  content: '';
  background: url('images/icon_feature_05.svg');
  background-size: cover;
  width: 80px;
  height: 60px;
  top:0;
  left: 0;
}

.about .feature ul li.feature_06::before{
  position: absolute;
  display: block;
  content: '';
  background: url('images/icon_feature_06.svg');
  background-size: cover;
  width: 80px;
  height: 60px;
  top:0;
  left: 0;
}

a.link_button {
  text-align: center;
  display: inline-block;
  padding:12px 66px 12px 50px;
  background: #a8936d;
  color: #fff;
  text-decoration: none;
  transition: .5s;
}

a.link_button:hover {
  background: #f4e9d9;
  text-decoration: none;
  color: #635847;
}

a.link_button i {
  position: relative;
  font-style: normal;
}

a.link_button i::before {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #fff;
  top:28%;
  right: -30px;
  transition: .5s;
}

a.link_button:hover i::before {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #635847;
  top:28%;
  right: -30px;
}

.link_button_02{
  text-align: center;
  display: inline-block;
  padding:12px 36px 12px 20px;
  background: #fff;
  color: #a8936d;
  text-decoration: none;
  transition: .5s;
  border:1px solid #a8936d;
}

a.link_button_02:hover {
  background: #a8936d;
  text-decoration: none;
  color: #f4e9d9;
}

a.link_button_02 i {
  position: relative;
  font-style: normal;
}

a.link_button_02 i::before {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #a8936d;
  top:28%;
  right: -30px;
  transition: .5s;
}

a.link_button_02:hover i::before {
  content: '';
  display: block;
  position: absolute;
  border: 6px solid transparent;
	border-left: 14px solid #f4e9d9;
  top:28%;
  right: -30px;
}

.method {
  padding-top: 50px;
  padding-bottom: 50px;
}

.method ul {
  margin: 0 0 60px;
  padding: 0;
  display: flex;
  flex-wrap: wrap; 
}

.method ul li {
  list-style: none;
  width: 49%;
	margin-right: 2%;
	position:relative;
	padding-bottom:5em;
}

.method ul li:nth-child(2n+2){
  margin-right: 0;
}

.method ul li h3 {
  color:#635847;
  font-size: 22px;
  margin-top: 7px;
  margin-bottom: 10px;
}

.method ul li h3 span {
  font-size: 16px;
}

.method ul li p.link_text {
	position:absolute;
	bottom:0;
	left:50%;
	transform: translateX(-50%);
	width:100%;
}

.age ul {
  margin: 0;
  padding: 0;
}

.age ul li {
  list-style: none;
  margin-bottom: 30px;
}

.age ul li dl {
  margin: 0;
  padding: 0;
}

.age ul li dl dt {
  margin: 0;
  padding: 0;
}

.age ul li dl dd {
  margin-top: 7px;;
}

.age ul li dl dd h3 {
  color:#635847;
  font-size: 22px;
  margin-top: 7px;
  margin-bottom:0 ;
}

.top_step {
  background: url('images/top_step_back.jpg');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center left;
  margin-top: 40px;
  padding-top: 50px;
  padding-bottom: 50px;
}

.top_step ul {
  margin: 20px 0 40px;
  padding: 0;
}

.top_step ul li {
  list-style: none;
  background:#e5cca3 ;
  color: #635847;
  padding: 10px 20px;
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  display: block;
}

.top_step ul li::before {
  position: absolute;
  display: block;
  content: '';
  width:auto;
  height: auto;
  border: 10px solid transparent;
	border-top: 14px solid #a8936d;
  bottom:-45px;
  left:50%;
  transform: translateX(-50%);
}

.top_step ul li:last-child {
  margin-bottom: 0;;
}

.top_step ul li:last-child::before {
  display: none;
}

.rowtype {
  background:#fffcf8 ;
  padding-top: 50px;
  padding-bottom: 50px;
}

.rowtype ul {
  margin: 0 0 50px 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.rowtype ul li {
  list-style: none;
  width: 49%;
  margin-right: 2%;
  background: #fff;
  border: 1px solid #e5cca3 ;
  padding: 26px 0 15px 0 ;
  margin-bottom: 15px;
}

.rowtype ul li:nth-child(2n+2) {
  margin-right: 0;
}


.rowtype ul li dl {
  margin: 0;
  padding: 0;
}

.rowtype ul li dl dt {
  padding-left: 20%;
  padding-right: 20%;
  height: 60px;
}

.rowtype ul li dl dd {
  margin-top: 16px;
}

.rowtype ul li dl dd h3 {
  text-align: center;
  color: #635847;
  font-size: 18px;
}

.rowtype ul li dl dd p {
  color: #635847;
  text-align: center;
  font-size: 13px;
}

.rowtype ul li dl dd p.button_link {
  font-size: 12px;
  margin-bottom: 0;
}

.top_blog {
  padding-top: 50px;
  padding-bottom: 50px;
}

.top_blog ul {
  margin: 0 0 40px 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.top_blog ul li {
  list-style: none;
  background:#fff9f0 ;
  padding: 30px;
  margin-bottom: 20px;
}

.top_blog ul li dl {
  margin: 0;
  padding: 0;
}

.top_blog ul li dl dt {
  margin: 0;
}

.top_blog ul li dl dt img {
  margin: 10px 30% 0;
}

.top_blog ul li dl dt h3 {
  text-align: center;
  margin-top: 20px;
  color: #635847;
}

.top_blog ul li dl dt p {
  text-align: center;
  color: #635847;
}

.top_blog ul li dl dd {
  margin: 20px 0 0;
  padding: 0 30px;
}

.footer {
  background:#fff9f0 ;
  padding-top: 60px;
  padding-bottom: 50px;
}

.footer h2 {
  color: #a8936d;
  font-size: 22px;
  font-weight: 700;
}

.footer h3 {
  color: #a8936d;
  font-size: 22px;
  font-weight: 400;
}

.footer_bottom {
  background:#a8936d ;
  padding-top: 70px;
  padding-bottom: 40px;
}

.footer_bottom ul {
  margin: 0 0;
  padding: 0;
}

.footer_bottom ul li:last-child {
  border-bottom: 1px solid #ccc0ac;
}

.footer_bottom ul li {
  list-style: none;
  border-top: 1px solid #fff;
}

.footer_bottom ul li.secondrow {
  padding-left: 30px;
  border-top: 1px solid #ccc0ac;
}

.footer_bottom ul li a {
  padding-top: 10px;
  padding-bottom: 17px;
  display: block;
  color: #fff;
  text-decoration: none;
}

.copyright p {
  margin: 20px 0 0;
  padding-bottom: 90px;
  text-align: center;
  font-size: 12px;
  color: #635847;
}

.footer_navi {
  transition: 0.5s;
  transform: translateY(50px);
  opacity: 0;
  position: fixed;
  background: #a8936d;
  bottom: 0;
  border-top: 1px solid #fff;

}
.footer_navi.on {
  transform: translateY(0);
  opacity: 1.0;
}

.footer_navi p {
  font-size: 12px;
  margin-bottom: 0;
}

.footer_navi p.tel a {
  padding-top: 60px;
  position: relative;
  display: block;
  color: #fff;
  font-weight: 400;
  text-decoration: none;
}

.footer_navi p.tel a::before {
  position: absolute;
  content: '';
  display: block;
  width: 25px;
  height: 40px;
  background: url('images/Icon_tel.svg');
  background-repeat: no-repeat;
  background-size: cover;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}


.footer_navi p.calendar a {
  padding-top: 60px;
  position: relative;
  display: block;
  color: #fff;
  font-weight: 400;
  text-decoration: none;
}

.footer_navi p.calendar a::before {
  position: absolute;
  content: '';
  display: block;
  width: 41px;
  height: 40px;
  background: url('images/icon_calendar_02.svg');
  background-repeat: no-repeat;
  background-size: cover;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.footer_navi p.reservation a {
  padding-top: 60px;
  position: relative;
  display: block;
  color: #fff;
  font-weight: 400;
  text-decoration: none;
}

.footer_navi p.reservation a::before {
  position: absolute;
  content: '';
  display: block;
  width: 41px;
  height: 40px;
  background: url('images/icon_reservation_02.svg');
  background-repeat: no-repeat;
  background-size: cover;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}


.pagecont {
	padding-top:80px;
}

/*    576px    */

@media (min-width: 576px) {
  /*
  .container.top_main_box,
  .container.top_navi_01_box {
    max-width: 100%;
  }
    */

	.container.top_main_box {
		max-width: 100%;
	}
	
  .top_main .main_copy {
    bottom: 20px;
    width: 70%;
    right: 15px;
  }

  .top_main .main_copy h2 {
    font-size: 22px;
    font-weight: 100;
  }

  .top_main .main_copy h1 {
    font-size: 30px;
    font-weight: 100;
    border-top:1px solid #a8936d ;
    margin-bottom: 0;;
  }
  .top_main .main_copy h1 span {
    font-size: 18px;
  }
}


@media (min-width: 768px) {

  .navbar-brand {
    width: 31%;
  }

  .offcanvas-body {
    position: relative;
  }

  .offcanvas-body ul.main_navi {
    margin-top: 20px;
  } 

  .offcanvas-body ul.main_navi {
    margin-top: 42px;
  }

  .offcanvas-body ul.main_navi li {
    font-size: 17px;
    margin-left: 6px;
  }

   .offcanvas-body ul.main_navi li :last-child{
    margin-right: 0;;
   }

  .offcanvas-body ul.main_navi li a {
    display: block;
    position: relative;
  }

  .offcanvas-body ul.main_navi li a::before {
    position: absolute;
    content: '';
    width: 6px;
    height: 22px;
    background: #d9b66b;
    top: 11px;
    left: -5px;
  }

  .offcanvas-body ul.sub_navi {
    position: absolute;
    top: 0;
    right: 0;
  }

  .offcanvas-body ul.sub_navi li a{
    background:#e5cca3;
    color: #000;
    position: relative;
  }

  .navbar-expand-md .navbar-nav .faq .nav-link ,
  .navbar-expand-md .navbar-nav .contact .nav-link {
    padding-left: 38px;
    margin-right: 1px;
    font-size: 14px;
  }

  .offcanvas-body ul.sub_navi li.faq a::before {
    position: absolute;
    content: '';
    width:23px;
    height: 23px;
    background-image: url(images/icon_faq.svg);
    top: 8px;
    left: 8px;
  }
  .offcanvas-body ul.sub_navi li.contact a::before {
    position: absolute;
    content: '';
    width:23px;
    height: 23px;
    background-image: url(images/icon_contact_02.svg);
    top: 8px;
    left: 8px;
  }

  .navbar-expand-md .navbar-nav .tel {
    background:#a8936d;
    color: #fff;
    position: relative;
    font-family:"Outfit", sans-serif;
    padding: 6px 8px 2px;
    font-size: 18px;
    font-weight: bold;
  }
  
  .navbar-expand-md .navbar-nav .tel span {
    font-size: 16px;
    margin-right: 7px;
  }

  nav .container {
    max-width: 100%;
  }
  
  .nav-item {
    text-align: center;
    border-bottom: none;
  }

  .nav-item a.nav-link {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .top_main img.top_main_pc {
    display: block;
  }

  .top_main img.top_main_sp {
    display: none;
  }

  .top_main .main_copy {
    bottom: 20px;
    width: 58%;
    right: 15px;
  }

  .top_main .main_copy h2 {
    font-size: 38px;
    font-weight: 100;
  }

  .top_main .main_copy h1 {
    font-size: 30px;
    font-weight: 100;
    border-top:1px solid #a8936d ;
    margin-bottom: 0;;
  }
  .top_main .main_copy h1 span {
    font-size: 18px;
  }

  .about .feature ul li {
    margin-bottom: 16px;
    font-size: 16px;
    float: left;
    width: 49%;
    margin-right: 2%;
  }

  .about .feature ul li:nth-child(2n+2) {
    margin-right: 0;;
  }

  .about .feature ul li:last-child {
    margin-bottom: 0;
  }

  .age {
    background: url('images/top_age_back.jpg');
    background-repeat: no-repeat;
    background-size: 28%;
    background-position: left center;
    margin-top: 60px;
  }

  .age ul li dl dt {
    width:200px;
    float: left;
  }
  .age ul li dl dd {
    margin-left: 210px;
  }

  .rowtype ul li {
    list-style: none;
    width: 32%;
    margin-right: 2%;
    background: #fff;
    border: 1px solid #e5cca3 ;
    padding: 26px 0 15px 0 ;
    margin-bottom: 15px;
  }

  .rowtype ul li:nth-child(2n+2) {
    margin-right: 2%;
  }

  .rowtype ul li:nth-child(3n+3) {
    margin-right: 0;
  }

  .rowtype ul li dl dt {
    padding-left: 30%;
    padding-right: 30%;
    height: 60px;
  }

  .footer_bottom ul li {
    font-size: 14px;
  }

  .footer_navi {
    display: none;
  }

  .copyright p{
    margin: 20px 0 0;
    padding-bottom: 10px;
    text-align: center;
    font-size: 16px;
    color: #635847;
  }

}




@media (min-width: 838px) {

  .navbar-brand {
    width: 340px;
  }

  .offcanvas-body ul.main_navi li {
    font-size: 18px;
    margin-left: 24px;
  }


  .offcanvas-body ul.main_navi li {
    font-size: 18px;
  }

  .navbar-expand-md .navbar-nav .faq .nav-link ,
  .navbar-expand-md .navbar-nav .contact .nav-link {
    padding-left: 38px;
    margin-right: 1px;
    font-size: 16px;
  }

   .navbar-expand-md .navbar-nav .tel {
    background:#a8936d;
    color: #fff;
    position: relative;
    font-family:"Outfit", sans-serif;
    padding: 2px 8px 2px;
    font-size: 24px;
    font-weight: bold;
  }
}

@media (min-width: 992px) {
  nav .container {
    max-width: 960px;
	}

	.container.top_main_box{
		max-width:100%;
	}

  .container.top_navi_01_box {
    max-width: 960px;
  }

  .top_main .main_copy {
    bottom: 20px;
    width: 58%;
    right: 15px;
  }

  .top_main .main_copy h2 {
    font-size: 44px;
    font-weight: 100;
  }

  .top_main .main_copy h1 {
    font-size: 34px;
    font-weight: 100;
    border-top:1px solid #a8936d ;
    margin-bottom: 0;;
  }
  .top_main .main_copy h1 span {
    font-size: 20px;
    margin-right: 10px;;
  }

  .top_navi_01 .top_navi_01_box ul {
    margin-left: 15px;
    margin-right: 15px;
  }
  .top_navi_01 .top_navi_01_box ul li {
    list-style: none;
    float: left;
    width: 32%;
    display: block;
    margin-right: 2%;
  }
  .top_navi_01 .top_navi_01_box ul li:last-child {
    margin-right: 0;;
  }
  .top_navi_01 .top_navi_01_box ul li a {
    display: block;
    width: 100%;;
  }

  .info ul {
    margin-top: 40px;
    padding: 0;;
  }

  .info h2 {
    font-size: 32px;
  }

  .about,
  .method,
  .top_step,
  .rowtype {
    padding-top: 70px;
  }

  .about h2,
  .method h2,
  .age h2,
  .method h2,
  .top_step h2,
  .rowtype h2,
  .top_blog h2 {
    font-size: 32px;
    padding-left: 70px;
    padding-right: 70px;
    margin-bottom: 70px;
  }
  .about p {
    font-size: 20px;
    font-weight: 300;
    color: #000;
  }

  .about .feature ul li {
      margin-bottom: 16px;
      font-size: 18px;
      float: left;
      width: 49%;
      margin-right: 2%;
    }

  .about .feature ul li.feature_02,
  .about .feature ul li.feature_04 {
    padding-bottom: 14px;
    padding-left: 95px;
    padding-top: 5px;;
  }

  .method ul li {
    width: 24.1%;
    margin-right: 1.2%;
  }

  .method ul li:nth-child(2n+2){
    margin-right: 1.2%;
  }
  .method ul li:nth-child(4n+4){
    margin-right: 0;
  }
  .method ul li h3 {
    font-size: 24px;
    margin-bottom: 4px;
  }
  .method ul li h3 span {
    font-size: 18px;
  }
  .method ul li p {
  font-size: 20px;;
  color: #635847;
  }

  .age {
    background-size: 32%;
  }

  .age ul li dl dt {
    width:290px;
  }
  .age ul li dl dd {
    margin-left: 300px;
  }

  .age ul li dl dd h3 {
    font-size: 24px;
  }

  .top_step ul {
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
    align-items: center;
  }

  .top_step ul li {
    padding: 10px 20px;
    margin-bottom: 0;
    width:12%;
    margin-right: 2%;
  }

  .top_step ul li::before {
    position: absolute;
    display: block;
    content: '';
    width:auto;
    height: ;
    border: 10px solid transparent;
    border-left: 14px solid #a8936d;
    bottom:auto;
    top: 34%;
    left:auto;
    transform: none;
    right: -24%;
  }

  .top_step ul li:last-child {
    margin-bottom: 0;
    margin-right: 0;
  }

  .top_step ul li:last-child::before {
    display: none;
  }

  .rowtype ul li dl dt {
    padding-left: 36%;
    padding-right: 36%;
    height: 60px;
  }

  .rowtype ul li dl dd h3 {
    font-size: 24px;
  }

  .rowtype ul li dl dd p {
    font-size: 16px;
  }

  .rowtype ul li dl dd p.button_link {
    font-size: 16px;
  }

  .top_blog ul {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
  }

  .top_blog ul li {
    list-style: none;
    background:#fff9f0 ;
    padding: 30px;
    margin-bottom: 20px;
    width: 32%;
    margin-left: 2%;
  }

  .top_blog ul li dl dd {
    padding: 0 0;
  }

  .top_blog ul li:last-child {
    margin-right: 0;
  }

  .footer h2 {
    font-size: 28px;
    font-weight: 700;
  }

  .footer h3 {
    font-size: 28px;
  }
}



@media (min-width: 1200px) {

  nav .container,
  .container.top_navi_01_box {
    max-width: 1140px;
  }

	.container.top_main_box {
		max-width:100%;
	}

  .top_main .main_copy {
    bottom: 30px;
    width: 58%;
    right: 15px;
  }

  .top_main .main_copy h2 {
    font-size: 52px;
    font-weight: 100;
  }

  .top_main .main_copy h1 {
    font-size: 40px;
    font-weight: 100;
    border-top:1px solid #a8936d ;
    margin-bottom: 0;;
  }
  .top_main .main_copy h1 span {
    font-size: 24px;
    margin-right: 10px;
  }

  .about .feature ul li {
      float: left;
      width: 32%;
      margin-right: 2%;
    }
  .about .feature ul li:nth-child(2n+2) {
    margin-right: 2%;
  }

  .about .feature ul li:nth-child(3n+3) {
    margin-right: 0;
  }

  a.link_button {
    font-size: 18px;;
  }
  
  .top_step ul li::before {
    right: -23%;
  }

  
}
@media (min-width: 1400px) {
  nav .container,
  .container.top_navi_01_box {
    max-width: 1320px;
  }
	
	.container.top_main_box {
		max-width:100%;
	}
  
  .top_main .main_copy h2 {
    font-size: 60px;
    font-weight: 100;
  }

  .top_main .main_copy h1 {
    font-size: 50px;
    font-weight: 100;
    border-top:1px solid #a8936d ;
    margin-bottom: 0;;
  }
  .top_main .main_copy h1 span {
    font-size: 27px;
    margin-right: 10px;;
  }
  .age {
    background-size: 34%;
  }
  .top_step ul li::before {
    right: -20%;
  }
}


