@charset "UTF-8";
/*基本設定
----------------------------------------------------*/
body {
  margin: 0;
  padding: 0;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", sans-serif;
  color: #333;
  line-height: 1.8;
  font-size: 15px;
  -webkit-text-size-adjust: 100%;
  position: relative;
  background: #f2e7d5 url("../images/common/bg_main.jpg") repeat left top/contain;
}

html {
  overflow-y: scroll;
}

a {
  color: #f36b09;
  text-decoration: underline;
}

a:hover {
  color: #f36b09;
  text-decoration: none;
  opacity: 0.8;
}

img {
  border: 0;
}

h1, h2, h3, h4, h5, p {
  margin: 0;
  padding: 0;
  font-weight: normal;
}

ul, li, dl, dt, dd {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

table {
  width: 100%;
  border: 0;
}

figure {
  margin: 0;
  padding: 0;
  line-height: 0;
}

.clear {
  clear: both;
}

.bold {
  font-weight: bold;
}

.fix {
  min-height: 1px;
}

.fix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

* html .fix {
  height: 1px;
  /*\*/
  /*/
height: auto;
overflow: hidden;
/**/
}

.red {
  color: #f73609;
}

.tac{
  text-align: center;
}

.img01 {
  line-height: 0;
}

.img01 img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.img02{
  line-height: 0;
  margin-bottom: 16px;
  text-align: center;
}

.img02 img{
  width: auto;
  max-width: 100%;
  height: auto;
}

.img_f-r {
  float: right;
  margin-left: 30px;
  margin-bottom: 15px;
}

.img_f-r img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.strong01 {
  color: #f1201a;
  font-weight: bold;
  font-size: 1.1em;
  border-bottom: 2px solid;
}

.strong02 {
  color: #f4822c;
  font-weight: bold;
  border-bottom: 1px solid;
}

.strong03 {
  font-size: 1.2em;
  color: #f1201a;
  font-weight: bold;
}

.strong04 {
  font-size: 1.2em;
  color: #f4822c;
  font-weight: bold;
  border-bottom: 2px solid;
}

.mt0 {
  margin-top: 0 !important;
}

.mt20 {
  margin-top: 20px;
}

.br {
  display: block;
}

/*header
----------------------------------------------------*/
#header {
  background: #fff url("../images/common/bg_header.gif") repeat-x left top;
  padding-top: 8px;
  position: relative;
  z-index: 3;
}

.h_wrap {
  width: 95%;
  max-width: 1000px;
  padding: 0 0;
  margin: 0 auto;
  position: relative;
}

.h_h1-t {
  position: relative;
  width: 100%;
  max-width: 690px;
  top: 4px;
}

.h_h1-t h1 {
  font-size: 12px;
}

.h_contact {
  position: absolute;
  right: 0;
  top: 30px;
  z-index: 2;
}

.h_contact .h_contact-info {
  position: relative;
  width: 29vw;
  max-width: 305px;
  line-height: 0;
}

.h_contact .h_contact-info img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.h_contact .h_contact-btn {
  position: absolute;
  bottom: 35%;
  left: 4px;
  right: 0;
  text-align: center;
  margin: 0 auto;
  width: 26vw;
  max-width: 268px;
}

.h_contact .h_contact-btn img {
  width: 100%;
  max-width: 268px;
  height: auto;
}

.h_logo {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  line-height: 1;
  width: 100%;
  max-width: 690px;
  margin-top: 8px;
}

.h_logo img{
  width: 40vw;
  max-width: 430px;
  height: auto;
}

.h_logo .h_logo-access {
  margin-left: 16px;
  line-height: 1.4;
  /*font-size: 14px;*/
  font-weight: bold;

  font-size: 13px;
  position: relative;
  margin-top: -40px;
}

.h_logo .h_logo-access span {
  color: #bf1414;
}

.h_mainimage {
  /*
  position: relative;
  top: -5px;
  z-index: 1;
  */
  margin-top: -40px;
  line-height: 0;
}

.h_mainimage img {
  width: auto;
  max-width: 100%;
  height: auto;
}

/*nav
----------------------------------------------------*/
#nav {
  margin: 0 auto;
  padding: 0;
  border-top: 1px solid #e8e8e8;
  background: linear-gradient(to bottom, #fff, #f7f7f7);
  position: relative;
  z-index: 4;
  box-shadow: 0 5px 10px 10px rgba(0, 0, 0, 0.05);
}

/*
#nav:before {
  content: "";
  display: block;
  background: #fff;
  width: 100%;
  height: 10px;
  position: absolute;
  top: -11px;
}
*/

.nav_wrap {
  width: 100%;
  max-width: 1000px;
  margin: 8px auto;
  padding-bottom: 8px;
}

.nav_wrap ul {
  display: flex;
  justify-content: space-between;
  border-left: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
}

.nav_wrap ul li {
  border-left: 1px solid #e8e8e8;
}

.nav_wrap ul li:first-child {
  border-left: none;
}

.nav_wrap ul li a {
  display: block;
  padding: 16px 41px;
  text-align: center;
  color: #171717;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  box-sizing: border-box;
  position: relative;
}

.nav_wrap ul .on a {
  background: linear-gradient(to top, #fff 0%, #f7f7f7 50%, #fff 100%);
}

.nav_wrap ul .on a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  bottom: -8px;
  width: 100%;
  border-bottom: 6px solid #f36b09;
}

.nav_sp {
  display: none;
}

/*main
----------------------------------------------------*/
#main {
  position: relative;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  width: 100%;
  max-width: 1000px;
  margin: 32px auto;
}

#conts {
  width: 730px;
  background: #fff;
  padding: 32px 0;
}

#side {
  width: 230px;
  padding: 0 0 32px;
}

.conts01 {
  width: 100%;
  box-sizing: border-box;
  padding: 0 35px;
}

.conts01-mt30 {
  margin-top: 30px;
}

/*top
----------------------------------------------------*/
.sp_mainimage {
  display: none;
}

/* covd-19 */
.covd-19{
  border:2px solid #ec3838;
  padding: 20px;
  text-align: left;
  font-size: 15px;
  color: #ec3838;
  line-height: 1.7;
  margin-bottom: 30px;
}

.covd-19_ttl01{
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  text-decoration: underline;
}

.covd-19 figure{
  margin: 24px auto;
}

.covd-19 img{
  width: auto;
  max-width: 100%;
  height: auto;
}

.maincampaign {
  width: 100%;
  max-width: 701px;
  margin: 30px auto 0;
  position: relative;
}

.maincampaign_img {
  position: relative;
}

.maincampaign_img img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.maincampaign_text {
  position: absolute;
  left: 0;
  right: 0;
  top: 135px;
  margin: 0 auto;
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  color: #391902;
}

.maincampaign_text span {
  background: linear-gradient(transparent 60%, #f2f461 60%);
  padding: 0 2px;
}

/* メディア掲載 */
.top_mediaconts{
  margin-bottom: 32px;
}

.top_mediaconts:last-of-type{
  margin-bottom: 0;
}

.top_media-ttl01{
  margin-bottom: 24px;
}

.top_media-ttl02{
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  line-height: 1.6;
  background: #f36b09;
  box-sizing: border-box;
  padding: 16px;
  text-align: center;
  border-radius: 8px;
  position: relative;
  margin-bottom: 32px;
}

.top_media-ttl02:after{
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 28px solid transparent;
  border-top: 20px solid #f36b09;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -40px;
}

.top_mediaconts-text{
  margin-top: 12px;
}

/* 資格アピール */
.top_proofconts{
  background: url("../images/top/bg_proof.gif") repeat left top;
  box-sizing: border-box;
  padding: 32px 32px 16px;
}

.proof_ttlconts{
  background: rgba(255, 255, 255, 1);
  box-sizing: border-box;
  padding: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.proof_ttl{
  display: flex;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
}

.proof_ttl span{
  position: relative;
  top: 4px;
}

.proof_ttl img{
  margin-right: 10px;
}

.proof_list{
  display: flex;
  flex-wrap: wrap;
  margin-top: 24px;
}

.proof_listconts{
  width: calc(100% / 3 - 11px);
  
  margin-right: 16px;
  margin-bottom: 24px;
}

.proof_listconts:nth-of-type(3n){
  margin-right: 0;
}

.proof_listconts figure{
  width: 100%;
  max-width: 188px;
  text-align: center;
}

.proof_listconts p{
  margin-top: 8px;
  font-weight: bold;
  text-align: center;
}

.proof_listconts img{
  width: auto;
  max-width: 100%;
  height: auto;
}

/* 推薦の声 */
.top_recommend-conts {
  background: #fbf8e5;
  padding: 32px 24px;
  margin-top: 14px;
}

.recommend_copy {
  background: #fddc65;
  width: calc(100% - 20px);
  box-sizing: border-box;
  box-shadow: 10px 10px 0 0 #ece9d8;
  margin: 0 auto 32px;
  padding: 20px;
  position: relative;
}

.recommend_copy-medal {
  position: absolute;
  left: -25px;
  top: -10px;
}

.recommend_copy-text {
  position: relative;
  box-sizing: border-box;
  margin-left: 80px;
}

.recommend_copy-text p {
  font-size: 23px;
  font-weight: bold;
  line-height: 1.7;
  color: #412111;
  margin-bottom: 0 !important;
}

.recommend_copy-text p span {
  color: #d90000;
  border-bottom: 3px solid;
}

.recommend_voice {
  margin-top: 16px;
  display: flex;
  justify-content: space-between;
}

.recommend_voice02 {
  justify-content: center;
}

.recommend_voice02 .recommend_voice-img {
  margin: 0 auto;
}

.recommend_voice-sec p {
  margin-bottom: 1em;
}

.recommend_voice-ttl01 {
  font-size: 15px;
  font-weight: bold;
  color: #333;
  border-bottom: 2px dotted #b7aa98;
  line-height: 1.5;
  margin-bottom: 12px;
  padding-bottom: 4px;
}

.recommend_voice-text {
  width: calc(100% - 217px);
}

.recommend_voice-img {
  width: 193px;
  margin-left: 24px;
}

.recommend_voice-info {
  background: #fff;
  padding: 12px 8px;
  box-sizing: border-box;
  margin-top: 12px;
  text-align: center;
  line-height: 1.5;
}

.recommend_voice-info p {
  margin-bottom: 8px !important;
}

.recommend_voice-name {
  font-weight: bold;
  border-bottom: 1px solid #333;
  margin-bottom: 8px;
  padding-bottom: 4px;
}

.recommend_voice-memo {
  font-size: 13px;
  border-top: 1px dotted #d2d2d2;
  padding-top: 8px;
}

/* お悩みではありませんか？ */
.nayami_conts-top {
  line-height: 0;
  text-align: center;
  width: 100%;
  position: relative;
}

.nayami_conts-text {
  background: url("../images/top/top_nayami-bg02.png") repeat left top;
  width: 100%;
  max-width: 648px;
  margin: 0 auto;
  display: block;
  padding-bottom: 20px;
  border-radius: 0 0 16px 16px;
}

.nayami_conts-textwrap {
  background: #fff;
  padding: 12px 30px;
  box-sizing: border-box;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  position: relative;
  left: 1px;
}

.nayami_ttl01 {
  text-align: center;
}

.nayami_ttl01 img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.nayami_list {
  margin-top: 16px;
}

.nayami_list li {
  background: url("../images/top/top_nayami-check01.png") no-repeat left top;
  padding-left: 34px;
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 16px;
  border-bottom: 1px dotted #d9d9d9;
  padding-bottom: 8px;
}

.nayami_answer img {
  line-height: 0;
  width: auto;
  max-width: 100%;
  height: auto;
}

/* プロフィール */
.profile_conts p {
  margin-bottom: 20px;
}

.profile_conts-img01 {
  float: right;
  margin-left: 32px;
}

.youtube_img {
	margin: 20px 0;
}

.youtube_img img {
  width: auto;
  max-width: 100%;
  height: auto;
}


/* オファー */
.offer {
  position: relative;
}

.offer img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.offer_btn {
  position: absolute;
  bottom: 38px;
  margin: 0 auto;
  text-align: center;
  left: 0;
  right: 0;
}

.offer_btn img {
  width: auto;
  max-width: 100%;
  height: auto;
}

/* お客様の声 */
.voice_conts {
  margin-top: 32px;
}

.voice_conts:first-of-type {
  margin-top: 0;
}

.top_voice-ttl01 {
  margin-bottom: 20px;
}

.top_voice-ttl01 img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.voice_conts-ttl01 {
  background: #fddc65;
  padding: 24px 30px;
  box-sizing: border-box;
  margin-bottom: 38px;
  color: #412111;
  font-size: 22px;
  font-weight: bold;
  position: relative;
  box-shadow: 0 6px 0 #f0f0f0;
}

.voice_conts-ttl01:before {
  content: "";
  display: block;
  position: absolute;
  bottom: -35px;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  z-index: 2;
  border: 20px solid transparent;
  border-top: 15px solid #fddc65;
}

.voice_conts-ttl01:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -41px;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  z-index: 1;
  border: 20px solid transparent;
  border-top: 15px solid #f0f0f0;
}

.voice_conts-movie {
  text-align: center;
  line-height: 0;
  margin-bottom: 26px;
}

.voice_conts-movie iframe {
  width: 100%;
  max-width: 453px;
  min-height: 372px;
  margin: 0 auto;
  text-align: center;
}

.voice_conts-text {
  border: 6px solid #fddc65;
  box-sizing: border-box;
  background: #fff;
  padding: 24px;
}

.voice_ba-img{
  margin-bottom: 16px;
}

.voice_ba-img-wrap{
  display: flex;
  justify-content: center;
  align-items: center;
}

.voice_ba-conts img{
  width: auto;
  max-width: 100%;
  height: auto;
}

.voice_ba-arrow{
  margin: 0 20px;
}

.voice_ba-photo{
  margin-bottom: 4px;
}

.voice_ba-text01{
  text-align: center;
  margin-bottom: 0 !important;
}

.voice_text-ttl01 {
  font-size: 15px;
  font-weight: bold;
  border-bottom: 2px dotted #baaea8;
  padding-bottom: 8px;
  margin-bottom: 16px;
}

.voice_text-faq {
  margin-bottom: 28px;
}

.voice_text-faq:last-of-type {
  margin-bottom: 12px;
}

.voice_text-faq dt {
  color: #412111;
  margin-bottom: 8px;
  font-weight: bold;
}

.voice_text-faq dd {
  margin-bottom: 1em;
}

.voice_text-faq dd:last-of-type {
  margin-bottom: 0;
}

.voice_text-memo {
  font-size: 13px;
  text-align: right;
  border-top: 1px dashed #ddd;
  padding-top: 5px;
}

.voice_text-img01 {
  margin-right: 20px;
  float: left;
  position: relative;
  z-index: 2;
  background: #fff;
}

.voice_text-img01:after {
  content: "";
  display: block;
  position: absolute;
  right: -20px;
  top: 0;
  z-index: 1;
  width: 20px;
  height: 100%;
  background: #fff;
}

.voice_text-img01 figure {
  margin-bottom: 8px;
  line-height: 0;
}

.voice_text-img01 figure:last-of-type {
  margin-bottom: 0;
}

.voice_text-img01 .voice_img01-photo {
  box-shadow: 0 0 5px #f1eee9;
}

.voice_btn {
  margin-top: 32px;
}

.voice_btn a {
  width: 100%;
  max-width: 584px;
  margin: 0 auto;
  box-shadow: 4px 4px 3px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(to bottom, #f7a54d, #f24900);
  padding: 24px;
  border-radius: 4px;
  text-align: center;
  text-shadow: 2px 2px 2px rgba(153, 51, 3, 0.88);
  font-size: 28px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
}

.voice_btn a img {
  margin-right: 16px;
}

/* 施術を受けるメリット */
.merit_ttl {
  text-align: center;
  line-height: 0;
}

.merit_ttl img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.merit_conts-wrap {
  box-sizing: border-box;
  padding: 16px;
  border: 6px solid #afd721;
  margin-top: 30px;
}

.merit_conts-ttl {
  position: relative;
  padding: 16px 0;
  padding-left: 74px;
  min-height: 76px;
  font-size: 25px;
  font-weight: bold;
  color: #391902;
  line-height: 1.5;
}

.merit_conts-ttl:after {
  content: "";
  display: block;
  width: 46px;
  height: 76px;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 5px;
}

.merit_ttl01:after {
  background-image: url("../images/top/top_merit-no1.png");
}

.merit_ttl02:after {
  background-image: url("../images/top/top_merit-no2.png");
}

.merit_ttl03:after {
  background-image: url("../images/top/top_merit-no3.png");
}

.merit_conts {
  margin-bottom: 24px;
  padding: 0 12px 24px 12px;
  border-bottom: 2px dotted #e0e0e0;
}

.merit_conts:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.merit_img {
  float: right;
  margin-left: 32px;
}

.merit_text p {
  margin-bottom: 1em;
}

.merit_text p:last-of-type {
  margin-bottom: 0;
}

/* ビフォーアフター */
.top_ba-ttl {
  text-align: center;
}

.top_ba-ttl img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.ba_conts {
  margin-top: 32px;
}

.ba_conts:first-of-type {
  margin-top: 16px;
}

.ba_conts-ttl01 {
  background: #fbf8e5;
  padding: 24px 20px;
  box-sizing: border-box;
  margin-bottom: 38px;
  display: flex;
  align-items: center;
  color: #412111;
  font-size: 20px;
  font-weight: bold;
  position: relative;
  box-shadow: 0 6px 0 #f0f0f0;
}

.ba_conts-ttl01 img {
  margin-right: 10px;
}

.ba_conts-ttl01:before {
  content: "";
  display: block;
  position: absolute;
  bottom: -35px;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  z-index: 2;
  border: 20px solid transparent;
  border-top: 15px solid #fbf8e5;
}

.ba_conts-ttl01:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -41px;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  margin: 0 auto;
  z-index: 1;
  border: 20px solid transparent;
  border-top: 15px solid #f0f0f0;
}

.ba_conts-img {
  text-align: center;
}

.ba_conts-img img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.ba_conts-tac01{
  margin: 24px auto 0;
  text-align: center;
}

.ba_conts-memo {
  margin-top: 30px;
  text-align: center;
  font-size: 13px;
}

.ba_conts-memo01{
  margin-top: 1em;
}

/* 施術の流れ */
.top_flow-ttl {
  text-align: center;
}

.top_flow-ttl img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.flow_step-ttl {
  display: flex;
  align-items: center;
  font-size: 20px;
  color: #412111;
  font-weight: bold;
  line-height: 1.5;
  padding-left: 8px;
  position: relative;
  z-index: 2;
}

.flow_step-ttl img {
  margin-right: 10px;
}

.flow_step-img {
  margin-top: -5px;
  position: relative;
  z-index: 1;
}

.flow_step-img img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.flow_step ul {
  display: flex;
  flex-wrap: wrap;
}

.flow_step ul li {
  width: calc(50% - 30px);
  max-width: 300px;
  position: relative;
  margin-right: 60px;
  margin-bottom: 16px;
}

.flow_step ul li:after {
  content: "";
  display: block;
  background: url("../images/top/top_flow-icon.png") no-repeat center 62%;
  background-size: 50% auto;
  width: 8vw;
  max-width: 60px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -60px;
}

.flow_step ul li:nth-of-type(2n) {
  margin-right: 0;
}

.flow_step ul li:nth-of-type(2n):after {
  content: none;
}

.flow_caution {
  display: flex;
  width: 100%;
  border: 6px solid #e83200;
  padding: 18px 20px;
  box-sizing: border-box;
}

.flow_caution-illust {
  width: 72px;
  margin-right: 10px;
}

.flow_caution-text {
  width: calc(100% - 82px);
}

.flow_caution-text p {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 1em;
}

.flow_caution-text p:last-of-type {
  margin-bottom: 0;
}

/* 選ばれる3つの理由 */
.top_select-ttl01 {
  text-align: center;
}

.top_select-ttl01 img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.select_conts {
  margin-bottom: 30px;
}

.select_conts-ttl {
  background: #fddc65;
  margin-left: 64px;
  position: relative;
  box-sizing: border-box;
  padding: 8px 24px 8px 32px;
  margin-top: 16px;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  font-size: 22px;
  font-weight: bold;
  color: #391902;
}

.select_conts-ttl:before {
  content: "";
  width: 86px;
  height: 86px;
  background-position: left center;
  position: absolute;
  left: -64px;
  top: -15px;
  display: flex;
  align-items: center;
}

.select_ttl01:before {
  background-image: url("../images/top/top_select-chigai01.png");
}

.select_ttl02:before {
  background-image: url("../images/top/top_select-chigai02.png");
}

.select_ttl03:before {
  background-image: url("../images/top/top_select-chigai03.png");
}

.select_hikaku {
  display: flex;
}

.select_hikaku-tain {
  background: #efefef;
  padding: 16px 24px;
  width: 100%;
  max-width: 290px;
  box-sizing: border-box;
  margin-right: 80px;
  position: relative;
}

.select_hikaku-tain:after {
  content: "";
  width: 80px;
  height: 100%;
  position: absolute;
  right: -80px;
  top: 0;
  background: url("../images/top/top_select-icon01.png") no-repeat center 15%;
  background-size: 43px auto;
}

.select_hikaku-ttl01 {
  font-size: 20px;
  color: #787878;
  font-weight: bold;
  text-align: center;
  border-bottom: 2px dotted #c3c3c3;
  padding-bottom: 4px;
  margin-bottom: 12px;
}

.select_hikaku-ttl02 {
  font-size: 20px;
  color: #f36b09;
  font-weight: bold;
  text-align: center;
  border-bottom: 2px dotted #f7c28b;
  padding-bottom: 4px;
  margin-bottom: 12px;
}

.select_hikaku-text {
  margin-top: 24px;
}

.select_hikaku-text:first-of-type {
  margin-top: 0;
}

.select_hikaku-text p {
  margin-bottom: 1em;
}

.select_hikaku-text p:last-of-type {
  margin-bottom: 0;
}

.select_hikaku-text01 {
  background: url("../images/top/top_hikaku-check01.png") no-repeat left top;
  padding-left: 32px;
}

.select_hikaku-text02 {
  background: url("../images/top/top_hikaku-check02.png") no-repeat left top;
  padding-left: 32px;
}

.select_hikaku-touin {
  background: #faf5d7;
  padding: 16px 24px;
  width: 100%;
  max-width: 290px;
  box-sizing: border-box;
}

/* 全力でサポートします */
.top_support-ttl01 img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.top_support-text p {
  margin-bottom: 1em;
}

.top_support-text p:last-of-type {
  margin-bottom: 0;
}

.top_support-img01 {
  text-align: center;
}

.top_support-img01 img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.top_support-tel {
  width: 100%;
  border: 6px solid #afd721;
  padding: 25px;
  box-sizing: border-box;
  margin-top: 20px;
}

.top_support-tel p {
  margin-bottom: 1em;
}

.top_support-tel p:last-of-type {
  margin-bottom: 0;
}

.support_tel-ttl01 {
  font-size: 34px;
  font-weight: bold;
  color: #391902;
  text-align: center;
  margin-bottom: 48px;
  position: relative;
}

.support_tel-ttl01:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 22px;
  background: url("../images/top/top_support-telline.png") no-repeat center center;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -28px;
}

/* コンテンツ内　お問い合わせ
----------------------------------------------------*/
.contact_ttl {
  line-height: 0;
  text-align: center;
}

.contact_ttl img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.contact_conts {
  width: 100%;
  border: 6px solid #f36b09;
  padding: 24px;
  box-sizing: border-box;
}

.contact_btn {
  display: none;
}

.contact_btn-conts {
  margin-bottom: 15px;
}

.contact_btn-conts:last-of-type {
  margin-bottom: 0;
}

.contact_btn-tel p a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: linear-gradient(to bottom, #ff852e 0%, #f24900 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  box-shadow: 4px 4px 3px rgba(0, 0, 0, 0.2);
  padding: 20px;
  box-sizing: border-box;
  border-radius: 4px;
}

.contact_btn-tel p a img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.contact_btn-mail p a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  width: 100%;
  background: linear-gradient(to bottom, #87d263 0%, #54a62e 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  box-shadow: 4px 4px 3px rgba(0, 0, 0, 0.2);
  padding: 20px;
  box-sizing: border-box;
  border-radius: 4px;
}

.contact_btn-mail p a img {
  margin-right: 15px;
}

.contact_open {
  margin: 24px auto;
}

.contact_open-tbl01 {
  background: #fffef7;
  box-sizing: border-box;
  border: 2px solid #391902;
  padding: 9px;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  display: block;
}

.contact_open-tbl01 tbody {
  display: block;
}

.contact_open-tbl01 tbody tr {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #391902;
}

.contact_open-tbl01 tbody tr:last-of-type {
  border-bottom: none;
}

.contact_open-tbl01 tbody tr th {
  width: calc(100%/9);
  text-align: center;
  border-right: 1px solid #391902;
  display: inline-block;
}

.contact_open-tbl01 tbody tr th:first-of-type {
  width: 200px;
}

.contact_open-tbl01 tbody tr th:last-of-type {
  border-right: none;
}

.contact_open-tbl01 tbody tr td {
  width: calc(100%/9);
  text-align: center;
  border-right: 1px solid #391902;
  display: inline-block;
}

.contact_open-tbl01 tbody tr td:first-of-type {
  width: 200px;
}

.contact_open-tbl01 tbody tr td:last-of-type {
  border-right: none;
}

.contact_access-info {
  display: flex;
  margin-bottom: 12px;
}

.contact_access-info dt {
  background: #faf5d7;
  padding: 7px;
  font-size: 14px;
  font-weight: bold;
  color: #391902;
  line-height: 1;
  width: 100%;
  max-width: 83px;
  height: 100%;
  max-height: 27px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.contact_access-info dd {
  width: calc(100% - 98px);
  margin-left: 15px;
  color: #391902;
}

.contact_access-map {
  line-height: 0;
  margin-top: 20px;
}

.contact_access-map iframe {
  width: 100%;
  height: 100%;
  min-height: 400px;
}


/*動画用
----------------------------------------------------*/
.conts-movie {
  text-align: center;
  line-height: 0;
}

.conts-movie iframe {
  width: 100%;
  max-width: 660px;
  min-height: 420px;
  margin: 0 auto;
  text-align: center;
}



/*サイドバー
----------------------------------------------------*/
.side_campaign {
  position: relative;
  margin-bottom: 20px;
}

.side_campaign-img {
  position: relative;
  line-height: 0;
}

.side_campaign-text {
  position: absolute;
  top: 81px;
  left: 28px;
  font-size: 15px;
  font-weight: bold;
  color: #391902;
  line-height: 1.25;
  text-align: center;
}

.side_campaign-text span {
  display: block;
  background: linear-gradient(transparent 60%, #f2f461 60%);
}

.side_bnr01,
.side_bnr02 {
  margin-bottom: 20px;
}

.side_bnr01 p,
.side_bnr02 p {
  margin-bottom: 10px;
  line-height: 0;
}

.side_bnr01 p:last-of-type,
.side_bnr02 p:last-of-type {
  margin-bottom: 0;
}

.side_menu {
  margin-bottom: 20px;
}

.side_ttl {
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  padding: 8px;
  box-sizing: border-box;
  text-align: center;
  border-radius: 4px 4px 0 0;
}

.side_ttl-first,
.side_ttl-about,
.side_ttl-case {
  background: #f36b09;
}

.side_ttl-voice {
  background: #e83200;
}

.side_menu-conts {
  background: #fbf8e5;
  box-sizing: border-box;
  padding: 10px;
  border-radius: 0 0 4px 4px;
}

.side_menu-conts li {
  border-bottom: 2px dotted #d0cfc4;
  padding-bottom: 6px;
  margin-bottom: 6px;
  padding-left: 28px;
  text-align: left;
  position: relative;
}

.side_menu-conts li:before {
  content: "";
  display: block;
  background: url("../images/common/side_icon.png") no-repeat left top;
  width: 19px;
  height: 19px;
  position: absolute;
  left: 0;
  top: 2px;
}

.side_menu-conts li a {
  color: #333;
}

.side_menu-conts li:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.side_info {
  width: 100%;
}

.side_info:before {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  border-radius: 3px 3px 0 0;
  background: url("../images/common/side_info-bg01.png") no-repeat left top;
}

.side_info:after {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  border-radius: 0 0 3px 3px;
  background: url("../images/common/side_info-bg01.png") no-repeat left top;
}

.side_info-wrap {
  background: url("../images/common/side_info-bg02.png") repeat left top;
  padding: 12px 6px;
}

.side_info-ttl {
  text-align: center;
  margin-bottom: 8px;
}

.side_info-list01 {
  margin: 0 12px;
  text-align: left;
}

.side_info-list01 dt,
.side_info-list01 dd {
  font-size: 13px;
  line-height: 1.5;
  color: #fff;
}

.side_info-list01 dt {
  background: url("../images/common/./side_info-icon01.png") no-repeat left 5px;
  padding-left: 10px;
  margin-bottom: 4px;
  font-weight: bold;
}

.side_info-contact {
  border-top: 2px dotted #626d67;
  border-bottom: 2px dotted #626d67;
  margin-top: 20px;
  padding-top: 15px;
  padding-bottom: 15px;
  margin-bottom: 20px;
}

.side_contact-tel {
  text-align: center;
  line-height: 0;
}

.side_contact-btn {
  text-align: center;
  line-height: 0;
}

.side_info-open {
  margin: 0 8px 15px;
}

.side_info-open img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.side_info-map {
  margin: 15px 12px 0;
}

.side_info-map iframe {
  width: 100%;
  height: auto;
}

/*ページトップ
----------------------------------------------------*/
#pagetop {
  position: relative;
  bottom: 0;
  right: 2.5%;
  margin: 0 0 -28px auto;
  width: 56px;
  height: 56px;
  z-index: 9998;
}

#pagetop p {
  line-height: 0;
}

#pagetop p img {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.24);
  border-radius: 1000px;
  line-height: 0;
}

/*お問い合わせコンテンツ
----------------------------------------------------*/
.common_contact {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffdb59+38,f36b09+100 */
  background: linear-gradient(to right, #ffdb59 50%, #f36b09 50%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  line-height: 0;
  text-align: center;
}

.common_contact img {
  width: auto;
  max-width: 100%;
  height: auto;
}

.common_contact-pc {
  display: block;
}

.common_contact-sp,
.sp_btm {
  display: none;
}

/*footer
----------------------------------------------------*/
#footer {
  width: 100%;
  max-width: 1000px;
  margin: 30px auto;
}

.f_menu ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.f_menu ul li:first-child:before {
  content: "|";
  margin: 0 12px 0 0;
}

.f_menu ul li:after {
  content: "|";
  margin: 0 12px;
}

.f_menu ul li a {
  color: inherit;
  text-decoration: none;
}

.f_menu ul li a:hover {
  text-decoration: underline;
}

.f_info {
  display: flex;
  justify-content: center;
  margin: 40px auto 24px;
  padding: 24px 0;
  border-top: 1px solid #412111;
  border-bottom: 1px solid #412111;
}

.f_info-logo,
.f_info-tel,
.f_info-address,
.f_info-access {
  font-size: 13px;
  margin: 0 8px;
}

.f_info-logo {
  font-weight: bold;
}

.f_copy {
  font-size: 13px;
  text-align: center;
  margin-bottom: 32px;
}
