@charset "UTF-8";

body {
  font-family: "fot-tsukuardgothic-std", sans-serif;
font-weight: 400;
font-style: normal;
/* color: #959536; */
color: #222222;
background: #f8f8f8;
-webkit-font-smoothing: antialiased;/*macでサイトのフォントが太くなるのを回避：アンチエイリアス制御*/
}
.title-h4,address a,.page-title,h2.fadeIn,h3.fadeIn{color: #959536;}
.bold{font-weight: 700;}
.pink{color: palevioletred;}
.wrap{width: 100%; height: auto; max-width: 1600px; margin: 0 auto;}
.header {width: 100%; text-align: left; padding:12px; position: relative;}
.header .head-logo { font-size: 14px;  margin-top:4px; font-weight: 700; color: #959536;}
html,body{
	height: 100%;/*高さを100%にして描画エリアをとる*/
}

#particles-js{ 
	position:fixed;/*描画固定*/
	z-index:-1;/*描画を一番下に*/
	width: 100%;
	height: 100%;
	background-color:#f8f8f3;/*背景色*/
}
#wrapper{
    position: relative;/*描画を#particles-jsよりも上にするためposition:relative;を指定*/
    z-index: 1;/*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
    width:100%;
    height: 100%; padding-top: 20px;
  }
  #wrapper h2{ position:absolute; right: 24px; top: -38px; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 20px; font-weight: 700; line-height: 1.8em; letter-spacing: 0.1em;}
  #wrapper h3{ position:absolute; left: 60px; top: 90px; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 15px; font-weight: 700; line-height: 1.8em; letter-spacing: 0.1em;}
  #wrapper .catch-bg{background-color: #f8f8f3; padding: 4px 2px;}
  #wrapper .main_img{width: 80%; display: block;
    margin: 0 auto;
    border-radius: 16px;}

.head-logo-wrap{ 
  display: block; width: 84px; text-align: center;}
.head-logo-wrap img{width: 70%;}
.info-text a{text-decoration: underline;}

 .openbtn{
	position: fixed;
  right: 0; top: 0;
	cursor: pointer;
    width: 70px;
    height:50px; z-index: 999;
}

/*ボタン内側*/
.openbtn span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    right: 14px;
    height: 2px;
    border-radius: 2px;
	background: #959536;
  }


.openbtn span:nth-of-type(1) {
	top:22px;	
  	width: 50%;
}

.openbtn span:nth-of-type(2) {
	top:23px;
  	width: 35%; display: none;
}

.openbtn span:nth-of-type(3) {
	top:31px;
  	width: 50%;
}

/*activeクラスが付与されると線が回転して×になる*/

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 30px;
    transform: translateY(6px) rotate(-135deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 30px;
    transform: translateY(-6px) rotate(135deg);
    width: 30%;
}

  /*========= ナビゲーションのためのCSS ===============*/


#g-nav {
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position: fixed;
  z-index: 998;
  /*ナビのスタート位置と形状*/
  top: 0;
  right: -120%;
  width: 100%;
  height: 100vh; /*ナビの高さ*/
  background: rgba(255, 255, 255, 0.9);
  /* background:linear-gradient(45deg, rgba(88, 182, 211, .9), rgb(211 126 63 / 90%)); */
  /*動き*/
  transition: all 0.6s;
}

.navi-wrap {
  width: 100%;
  padding-left: 50px;
}

.navi-inner {
  display: flex;
  margin-bottom: 32px;
}

.navi-icon {
  width: 30px;
  padding-top: 4px;
}

.navi-icon img {
  width: 100%;
}

.navi-text {
  margin-left: 24px;
  font-weight: 700;
  font-size: 18px;
}

.navi-text span {
  color: #87876a;
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0.1em;
}

.navi-tel {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.1em;
}


#navi-close {color: #222222; position: relative; top: 0; padding-top: 60px; text-align: center; cursor: pointer; font-size: 20px;}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    margin-top: 80px;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:35%;
    left:50%;
    transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
  list-style: none;
    text-align: center;
}

#g-nav li a{
  color: #fff;
  text-decoration: none;
  padding:10px 0;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}

.fadeIn{
animation-name:fadeInAnime;
animation-duration:3s;
animation-fill-mode:forwards;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.doctor-info{margin-top: 32px; font-size: 14px;}
.doctor-info .info-text{font-weight: bold;}


#footer {width: 100%; position: relative; text-align: center; line-height: 1.5em; padding: 30px 16px; margin-top: 60px; background-color: #efefe5;}
.footer-logo{width: 80px; margin-left: 8px;  margin-bottom: 4px;}
.footer-text {font-weight: 600; font-size: 16px; text-align: left;}
.footer-content-wrap {display: flex; margin: 20px auto; justify-content: space-between; margin-bottom: 50px;}
#footer address { font-size: small; text-align: left; }
.footer-link {text-align: right; font-size: small;}
.footer-logo img{width: 100%;}

span.smoothText {
    overflow: hidden;
    display: block; font-size: 11px;
}


/*全て共通：hideエリアをはじめは非表示*/
.hide-area{
	display: none;
}

/*全て共通：モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
	background:#ccc;	
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
	background:#888;
}

.content-wrap{width: 94%; margin: 30px auto;}
.content-wrap.company-content { width: 100%; }
.content-wrap.how,.content-wrap.where { margin-top: 100px; }


  #page-top a{
    display: flex;
    justify-content:center;
    align-items:center;
    background:#e1dccf;
    border-radius: 5px;
    width: 40px;
    height: 40px;
    color: #fff;
    text-align: center;
    text-transform: uppercase; 
    text-decoration: none;
    font-size:0.8rem;
    transition:all 0.3s;
    opacity: 0.8;
  }
  
  /*
  #page-top a:hover{
    background: #777;
  }*/
  
  /*リンクを右下に固定*/
  #page-top {
    position: fixed;
    right: 18px;
    bottom:18px;
    z-index: 2;
      /*はじめは非表示*/
    opacity: 0;
    transform: translateY(100px);
  }
  
  /*　上に上がる動き　*/
  
  #page-top.UpMove{
    animation: UpAnime 0.5s forwards;
  }
  @keyframes UpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }
  
  /*　下に下がる動き　*/
  
  #page-top.DownMove{
    animation: DownAnime 0.5s forwards;
  }
  @keyframes DownAnime{
    from {
      opacity: 1;
    transform: translateY(0);
    }
    to {
      opacity: 1;
    transform: translateY(100px);
    }
  }
  .scrolldown1{
    /*描画位置※位置は適宜調整してください*/
	position:absolute;
	left:50%;
	bottom:-17px;
	height:50px;
  opacity: 0.9;
}


/* TOPページ */
.content-wrap {
  width: 100%;
  margin: 40px auto;
  display: grid;
  padding: 0 12px;
  line-height: 1.5em;
  justify-items: center;
  align-content: start;
}

.content-wrap .title-h4 {
  font-weight: 700;
}

.content-wrap .title-sub {
  font-weight: 400;
  color: #87876a;
  font-size: 11px;
  letter-spacing: 0.1em;
}

.content-wrap .news-wrap {
  width: 100%;
  position: relative;
  margin-top: 16px;
}

.content-wrap .news-wrap .info-content {
  padding: 8px 12px;
}

.content-wrap .news-wrap .info-content .info-date {
  font-size: 12px;
  color: #707070;
}

.content-wrap .news-wrap .info-content .info-text {
  font-size: 15px;
  line-height: 1.5em;
}

.content-wrap .info-content .img-wrap{width: 100%; margin: 12px 0;}
.content-wrap .info-content .img-wrap img{width: 100%;}

.round-wrap {background-color: #f8f8f3;}
.round-wrap::before{    border-radius: 6px 0 0 6px;
  width: 9px;
  border: 1px solid #222222;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-right: none;}
.round-wrap::after{
  border-radius: 0 6px 6px 0;
  width: 9px;
  border: 1px solid #222222;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  border-left: none;
}
.about-inner {
  display: grid;
  margin-top: 60px;
  justify-items: center;
  align-content: start;
}

.about-inner .about-text {
  margin-top: 16px;
  padding: 0 20px;
  background-color: #f8f8f3;
}

.about-inner .about-img {
  width: 250px;
  height: 180px;
  border-radius: 8px;
  overflow: hidden;
  margin: 12px auto;
}

.about-inner .about-img img {
  width: 250px;
  height: 180px;
  object-fit: cover;
}


.content-wrap.doctor {
  margin-top: 80px;
}

.content-wrap.doctor .doctor-inner {
  display: grid;
  justify-items: center;
  align-content: start;
}

.content-wrap.doctor .doctor-inner .doctor-flex {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

.content-wrap.doctor .doctor-inner .doctor-flex .img-wrap {
  width: 49%;
  border-radius: 8px;
  overflow: hidden;
}

.content-wrap.doctor .doctor-inner .doctor-flex .img-wrap img {
  width: 100%;
}

.content-wrap.doctor .doctor-inner .doctor-flex .text-wrap {
  width: 49%;
  font-size: 14px;
  background-color: #f8f8f3;
}

.content-wrap.doctor .movie-title {
  width: 100%;
  margin-top: 28px;
  text-align: center;
}

.content-wrap.doctor .video-wrap {
  width: 100%;
  margin-top: 8px;
  border-radius: 8px;
  overflow: hidden;
}

.content-wrap.doctor .video-wrap video {
  width: 100%;
  display: block;
}

.content-wrap.consultation{ margin-top: 80px;}

.content-wrap.consultation .table-wrap,
.consultation-wrap .table-wrap {
    margin-top: 20px;
    width: 100%;
}

.content-wrap.consultation .table-wrap table,
.consultation-wrap .table-wrap table {
    border-collapse: collapse;
    border: 2px solid #ffb6c1;
    width: 100%;
}

.content-wrap.consultation .table-wrap th,
.consultation-wrap .table-wrap th,
.content-wrap.consultation .table-wrap td,
.consultation-wrap .table-wrap td {
    border: 1px solid #ffb6c1;
    text-align: center;
    padding: 10px;
    font-size: 16px;
}

.content-wrap.consultation .table-wrap th,
.consultation-wrap .table-wrap th {
    background-color: #f7d6db;
    color: black;
    font-weight: normal;
}

.content-wrap.consultation .table-wrap .weekend,
.consultation-wrap .table-wrap .weekend {
    color: #00bfff;
}

.content-wrap.consultation .table-wrap .sunday,
.consultation-wrap .table-wrap .sunday {
    color: red;
}

.content-wrap.consultation .table-wrap td,
.consultation-wrap .table-wrap td {
    color: #ff69b4;
    vertical-align: middle;
}

.content-wrap.consultation .table-wrap tbody td,
.consultation-wrap .table-wrap tbody td {
    height: 60px;
    background-color: #fff;
}

.content-wrap.consultation .table-wrap .td-time,
.consultation-wrap .table-wrap .td-time {
    background-color: white;
    color: #222222;
}

.content-wrap.consultation .text-wrap,
.consultation-wrap .text-wrap {
    margin-top: 20px;
    background-color: #f8f8f3;
}

.content-wrap.access {
  margin-top: 80px;
  margin-bottom: 80px;
}

.content-wrap.access .map-wrap {
  width: 100%;
  margin-top: 20px;
}

.content-wrap.access .map-wrap iframe {
  width: 100%;
}

.content-wrap.access .text-wrap {
  margin-top: 20px;
  background-color: #f8f8f3;
}
.text-wrap.performance {
  width: 100%;
  background: rgba(255, 255, 255, 0.7);
  margin-top: 40px;
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 20px;
}

.text-wrap.performance h5 {
  font-weight: 700;
  margin: 20px auto;
  text-align: center;
}

.text-wrap.performance .performance-text {
  color: #333;
  text-align: left;
  font-size: 14px;
}

.text-wrap.performance .performance-num {
  text-align: right;
  color: #999;
  margin-bottom: 28px;
  font-size: 12px;
}

/* 下層ページ共通 */
.content-wrap.underlayer{margin-top: 0;}
.breadcrumb { width: 100%; text-align: left; font-size: 14px; display: flex; flex-wrap: wrap;}
.page-title{width: 100%; text-align: center; font-weight: 700; margin-top: 40px; font-size: 20px;}

.breadcrumb p::after {
  content: ">";
  margin-left: 0.6em; /* 記号の左右の余白 */
  color: #222222; /* 記号の色 */
}

.breadcrumb p { margin-top: 16px; margin-left: 6px; }
.breadcrumb p a { color: #222222; text-decoration: underline; }
.company-content .breadcrumb {width: 94%; margin-left: auto; margin-right: auto;}

.button19 {margin-top:24px;}
.button19 a {
    display: flex;
    justify-content: center;
    position: relative;
    margin: 0 auto;
    padding: 0.5em 0.5em;
    width: 284px;
    color: #222222;
    font-weight: 600;
    border: 1px solid #cdcd87;
    transition: 0.3s; text-align: center;
    font-size: 14px; background: #fbf4f6;
    border-radius: 8px;
  }
  
  .button19 a::before {
    content: '';
    position: absolute;
    top: calc(50% - 2px);
    right: -1.5em;
    transform: translateY(calc(-50% - 2px)) rotate(30deg);
    width: 12px;
    height: 1px;
    background-color: #cdcd87;
    transition: 0.3s;
  }
  
  .button19 a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -1.5em;
    transform: translateY(-50%);
    width: 50px;
    height: 1px;
    background-color: #cdcd87;
    transition: 0.3s;
  }
  .button19.inactive a::before,
  .button19.inactive a::after {display: none;}
  
  .button19 a:hover::before,
  .button19 a:hover::after {
    right: -2.0em;
  }

  /* テキストアニメーション用 */
  .text-animation {
    opacity: 0;
  }

  .text-animation.show {
    opacity: 1;
  }

  .text-animation.show .text-animation-span {
    display: inline-block;
    overflow: hidden;
  }

  .text-animation.show span {
    display: inline-block;
    letter-spacing: 0.1em;
    animation: showText .5s backwards;
  }
  
  @keyframes showText {
    0% {
      opacity: 0;
      transform: translateY(100%);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

.companys.content-wrap #companys { display: block; margin-top: 100px;}
.underlayer.content-wrap h1 { color: #222222; margin-top: 16px; padding-left: 5px;}
.underlayer.content-wrap.contact h2 { margin-top: 16px; padding-left: 5px;}
.underlayer .companys_wrap {margin-top: 60px;}

.privacy_wrap {max-width: 800px;
  margin: 0 auto;
  padding: 20px 10px;
  margin-top: 30px;
  line-height: 1.5em;
  color: #222222;
  font-size: 15px;
}
.privacy_wrap.hashimoto{margin-top: 0;}
.privacy_wrap h2 {
    border-bottom: 2px solid #e5e5e5;
    padding-bottom: 5px;     font-size: large;
    font-weight: 600;
}
.cells{margin-top: 24px;}
.cells-title{font-weight: bold; margin-bottom: 8px;}
.privacy_wrap h3 { margin-top: 30px; font-size: large;}
.privacy_wrap p {
    margin: 10px 0;
}
.privacy_wrap p.privacy-text { margin-bottom: 24px; }
.privacy_wrap .date {
    text-align: right;
    margin-top: 20px;
}
.privacy_wrap .contact-info {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 2px solid #e5e5e5;
}
.privacy_wrap.philosophy .content-text {
  margin-top: 20px;
}

.privacy_wrap.philosophy .content-text .img-wrap {
  width: 40%;
  float: left;
  margin-right: 12px;
}

.privacy_wrap.philosophy .content-text .img-wrap img {
  width: 100%;
}

.privacy_wrap.philosophy .content-text .img-wrap p {
  text-align: center;
  color: palevioletred;
  font-size: 14px;
  margin: 4px;
}

.privacy_wrap.thyroid .content-text {
  margin-bottom: 48px;
}

.privacy_wrap.thyroid .content-text .video-wrap {
  width: 100%;
  margin-top: 8px;
  border-radius: 8px;
  overflow: hidden;
}

.privacy_wrap.thyroid .content-text .video-wrap video {
  width: 100%;
  display: block;
}

.privacy_wrap.thyroid .content-text .img-wrap {
  width: 100%;
}

.privacy_wrap.thyroid .content-text .img-wrap img {
  width: 100%;
}

.privacy_wrap.thyroid .content-text .text-wrap {
  margin: 12px 0;
}

.privacy_wrap.thyroid .content-text .text-wrap .text-center {
  font-size: 24px;
  line-height: 1.2em;
  color: palevioletred;
  font-weight: 700;
  text-align: center;
  margin-top: 12px;
}

.privacy_wrap.thyroid .content-text .text-wrap .text-center span {
  font-size: medium;
  font-weight: 400;
  font-size: 16px;
}

.privacy_wrap.thyroid .content-text .text-wrap .text-center .text-sick {
  margin-top: 24px;
}

.privacy_wrap.thyroid .content-text .text-wrap .text-round {
  width: 96%;
  background: palevioletred;
  border-radius: 16px;
  color: white;
  padding: 4px;
  margin: 12px auto;
}

.privacy_wrap.thyroid .content-text .text-wrap .text-pink {
  color: palevioletred;
  margin-top: 12px;
}

.privacy_wrap.thyroid .content-text .text-wrap .text-pink a {
  text-decoration: underline;
}

.privacy_wrap.thyroid .content-text .text-wrap .img-wrap {
  width: 50%;
  float: left;
  margin-right: 8px;
  margin-bottom: 4px;
}

.privacy_wrap.thyroid .content-text .text-wrap a {
  text-decoration: underline;
}

.privacy_wrap.thyroid .content-text .button19 a {
  padding: 1em 0;
}

.privacy_wrap.thyroid .content-text .flex-end {
  margin-top: 80px;
}

.privacy_wrap.thyroid .text-alert {
  color: palevioletred;
  margin: 4px 0;
}

.privacy_wrap.thyroid .content-text.content-end {
  margin-bottom: 0;
}

.privacy_wrap.thyroid .content-text.colored {
  border: 2px solid palevioletred;
  padding: 16px;
  font-size: 18px;
  background: white;
  border-radius: 12px;
}

.privacy_wrap.thyroid .content-text.colored a {
  font-size: 20px;
  display: block;
  margin-top: 12px;
}

.privacy_wrap.thyroid.access .map-wrap {
  width: 100%;
}

.privacy_wrap.thyroid.access .map-wrap iframe {
  width: 100%;
}


.disp-pc { display: none; }

.company_wrap {width: 100%; margin-top: 40px; line-height: 1.5em; font-size: 15px;}
.company_wrap .overview a {text-decoration: underline;}
.company_wrap .image-main {width: 100%; padding: 0 3%; }
.company_wrap .image-main img {width: 100%; }
.company_wrap .intro {width: 94%; margin: 20px auto 0 auto; text-align: center;}
.company_wrap .intro h2 {font-size: large; padding: 0 3%;}
.company_wrap .overview {width: 100%; margin-top: 50px; text-align: left; padding: 0 3%;}
.heading08 {font-size: 26px; line-height: 1.5em; color: #1b2265; position: relative; }
.heading08 span {	display: flex; align-items: center; font-size: 18px; position: relative; left: -3%;}
.heading08 span::before {	content: '';	display: inline-block;	margin-right: 8px;	width: 40px;	height: 1px;	background-image: linear-gradient(90deg, rgba(248, 15, 15, 1), rgba(207, 63, 245, 1));}
.overview-text {margin-top: 30px; padding: 0 10px;}
.overview-img {margin-top: 20px; padding: 0 10px; text-align: center;}
.overview-img img {width: 100%; display: block; margin-bottom: 8px; }
.overview-img span {margin-top: 8px;}
.shonan-el .overview-img {text-align: left;}
.overview .dl-wrap {margin-top: 30px; padding: 0 10px;}
.overview .dl-wrap dl {margin-bottom: 20px;}
.overview .dl-wrap dt {font-size: 16px; margin-bottom: 4px;}
.company_wrap .overview-odo {background-color: #fafafa; padding-top: 20px; padding-bottom: 30px;}
.company-head {width: 94%; margin: 0 auto;}
.company_wrap .btn-wrap .button19 { margin-top: 50px; }
.company_wrap .btn-wrap .button19 a { color: #1b2265;; border: 1px solid #1b2265; }
.company_wrap .btn-wrap .button19 a::before { background-color: #1b2265; }
.company_wrap .btn-wrap .button19 a::after { background-color: #1b2265; }

.wrap.company-item .underlayer.content-wrap.shonan-el h1,
.wrap.company-item .underlayer.content-wrap.shonan-el .heading08 span {color: #00a0d9;}

.wrap.company-item .underlayer.content-wrap.syakaijin h1,
.wrap.company-item .underlayer.content-wrap.syakaijin .heading08 span {color:#2459ac;}

.wrap.company-item .underlayer.content-wrap.eco h1,
.wrap.company-item .underlayer.content-wrap.eco .heading08 span {color:#098137;}

.wrap.company-item .underlayer.content-wrap.cars h1,
.wrap.company-item .underlayer.content-wrap.cars .heading08 span {color:#1b2265;}

.wrap.company-item .underlayer.content-wrap.jiryuu h1,
.wrap.company-item .underlayer.content-wrap.jiryuu .heading08 span {color:#841D21;}

.contact_wrap {margin-top: 40px; max-width: 800px; line-height: 1.5em; margin-right: auto; margin-left: auto;}
.contact-head { padding: 12px;}
.contact_wrap h3 { width: 100%; text-align: center; font-size: 20px; font-weight: 600;}

/*contact*/
.contact-content {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 12px;
}

.contact-content .contact-inner {
  margin-bottom: 20px;
  text-align: center;
}

.contact-content .content-wrap.consultation {
  margin-top: 60px;
  padding: 0;
}

.contact-content .content-wrap.consultation .table-wrap {
  width: 100%;
}

.contact-content .content-wrap.consultation .text-wrap {
  width: 100%;
  padding-left: 0;
}

.contact-content .consultation-wrap {
  display: block;
}
.contact-content .contact_wrap form {
	width: 94%;
	margin: 0 auto;
	text-align: center;
  margin-top: 30px;
}

.contact_wrap label {
	margin-bottom: 3px;
	text-align: left;
	display: block;
  font-weight: 600;
}

.contact_wrap label span {
	padding-left: 5px;
	color: red;
}

.contact_wrap input:not(input[type="submit"]) {
	width: 100%;
	margin-bottom: 25px;
	padding: 7px 7px;
	border: 1px solid #CCC;
	border-radius: 5px;
	text-align: left;
	display: block;
}

.contact_wrap textarea {
	width: 100%;
	margin-bottom: 25px;
	padding: 7px 7px;
	border: 1px solid #CCC;
	border-radius: 5px;
	text-align: left;
	display: block;
}

.contact_wrap input[type="submit"] {
	margin: 20px;
	padding: 10px 15px;
	background-color: #EEE;
	border: 1px solid #BBB;
	border-radius: 5px;
	display: inline-block;
}

.contact_wrap p:not(.complete) {
	width: 100%;
	min-height: calc(1em * 1.15 + 7px * 2 + 2px);
	margin-bottom: 25px;
	padding: 7px 7px;
	border-radius: 5px;
	text-align: left;
	display: block;
}
.contact_wrap .complete {
	text-align: center;
}

.contact_wrap .error {
	width: 60%;
	margin: 30px auto;
}
.contact_wrap .error li {
	color: red;
}




/* for tablet */
@media (min-width: 767px) {
  #wrapper{
    padding-top: 32px;
    .main_img{width: 80%; }
    h2{ right: 64px; top: 20px; font-size: 30px;}
    h3{ left: 128px; top: 256px; font-size: 20px;}
  }
/* TOPページ */
.content-wrap.news{ padding: 0 24px;
  .title-h4{font-size: 20px;
  }
  .news-wrap{
    .info-content{padding: 12px 20px;
      .info-date{font-size: 15px;}
      .info-text{font-size: 18px;}
    }
  }
}
.about-inner{
  .about-text{margin-top: 16px; padding: 0 20px; width: 420px;}
}

.text-wrap.performance{
  padding: 20px; margin-bottom: 20px;
  h5{margin: 20px auto; font-size: 18px;}
  .performance-text{ font-size: 16px; }
  .performance-num{ font-size: 14px;}
}

.privacy_wrap.thyroid{
  .content-text{ 
    .img-wrap.img-first{ width: 49%; }
    .flex-box{display: flex; justify-content: space-between;
      .flex-inner{width: 49%;}
      .flex-inner{display: flex; flex-direction: column; 
        .flex-bottom{margin-top: auto;}
      }
    }
    .img-wrap.img-basedou{ width: 80%; margin: 24px auto; }
    .flex-end{margin-top: 0;}
    .text-wrap .img-wrap{width: 30%;}
  }
}

.footer-link{font-size: medium; line-height: 2em;}
  form.confirm {width: 60%;}
  .disp-sp{display: none;}
}

/* for pc */
@media (min-width: 960px) {
  .openbtn{display: none;}
.header { padding:24px; }
.head-logo-wrap{ 
  display: block; width: 150px; text-align: center;
  img {width: 70%;}
}
.header .head-logo { font-size: 24px;  margin-top:12px; }
#wrapper{
    padding-top: 0; padding-bottom: 40px;
    .main_img{width: 50%; position: relative; top: -132px;}
    h2{ right: 14%; top: -52px; font-size: 38px;}
    h3{ right: 58%; top: 14%; font-size: 28px;}
    .catch-bg{background-color: #f8f8f3; padding: 4px 2px;}
    h2 .catch-bg{background: none;}
  }
  .pc-navi{position: absolute; top: 0; left: 0; color: #959536;
    .navi-wrap{width: 100%; padding-left: 60px;
      .navi-inner{display: flex; margin-bottom: 30px;
        .navi-icon{width: 30px; padding-top: 4px;
          img {width: 100%;}}
        .navi-text{margin-left: 24px; font-weight: 700; font-size: 18px;
          span{color: #87876a; font-weight: 400; font-size: 14px; letter-spacing: 0.1em;}}
      }
      .navi-tel{font-size: 26px; font-weight: 700; letter-spacing: 0.1em;}
    }
  }
  h2.fadeIn,h3.fadeIn{color: #959536;}

  /* TOPページ */
  .title-h4{font-size: 20px;}
.title-sub{font-size: 14px;}
.content-wrap.news{max-width: 1000px; margin-top: 140px;
  .news-wrap{
  .info-content{padding: 12px 40px;}
}
}
.doctor-info{margin-top: 40px; font-size: 18px; margin-bottom: 60px;}
.content-wrap.about{display: flex; margin-top: 100px; max-width: 1000px;}
.about-inner{display: grid; margin-top: 60px;
  justify-items: center;
  align-content: start;
  .about-text{margin-top: 16px; padding: 0 20px; width: 100%;}
  .about-img{width: 250px; height: 180px; border-radius: 8px; overflow: hidden; margin: 12px auto;
    img {width: 250px;
      height: 180px;
      object-fit: cover;}
  }
}
.content-wrap.doctor{margin-top: 0; max-width: 1000px;
  .doctor-inner{ 
  .doctor-flex{ margin-top: 30px;
      .img-wrap{width: 36%; border-radius: 8px; overflow: hidden;
        img{width: 100%;}
      }
      .text-wrap{width: 60%; font-size: 18px;}
    }
  }
  .movie-title{margin-top: 60px; font-size: 18px;}
  .video-wrap{margin-top: 20px;
  }
}
.consultation-wrap {display: flex; max-width: 1000px;padding: 0 12px;}
.content-text.content-end {
  .consultation-wrap{padding: 0;}
}
.privacy_wrap.thyroid{
  .content-text.content-end {
    .text-wrap{margin-top: 28px;}
  }
}

.content-wrap.consultation { margin-top: 100px;
    .text-wrap {
        padding-left: 20px; width: 50%;
    }
    .table-wrap{width: 50%;}
}
.content-wrap.access{margin-top: 100px; margin-bottom: 100px; max-width: 1000px;
  .access-wrap{display: flex; width: 100%;}
  .map-wrap{width: 50%;
    iframe{width: 100%;}
  }
  .text-wrap{width: 50%; padding-left: 20px; margin-top: 20px; background-color: #f8f8f3;}
}
.header .pc-navi{ width: 100%; padding-left: 300px;
  .navi-wrap{display: flex; flex-wrap:wrap; position: absolute; right: 0px; width: 1000px;
    .navi-inner{margin-right: 40px;
      .navi-text{font-size: 16px; margin-left: 12px; span{font-size: 12px;}}
    }
    .navi-tel{font-size: 24px;}
  }
}
.cells-wrap{display: flex; flex-wrap: wrap; gap: 4%;}
.cells{width: 48%;}


    .disp-pc { display: inline-block; padding-top: 40px; }
    .companys_wrap {display: flex; flex-flow: wrap; gap: 20px 30px;}
    .companys_item {width: calc((100% - 60px) / 3);}

    .company_wrap {max-width: 1000px; margin-left: auto; margin-right: auto; line-height: 1.8em;}
    .company_wrap .image-main {padding: 0;}

    .overview .flex-box {display: flex; flex-wrap: wrap;}
    .overview .flex-box.row-reverse {flex-direction:row-reverse}
    .overview .flex-box .flex-item {width: 50%;}

    .contact-head {text-align: center;}
    form.confirm {width: 60%;}

    .modaal-image .modaal-container { width:30%; }

    .h3-white,
    .text-white,
    /* .underlayer.content-wrap h1, */
    .underlayer.content-wrap .breadcrumb,
    .underlayer.content-wrap #companys,
    .underlayer.content-wrap.contact h2 
     {max-width: 1000px; margin-right: auto; margin-left: auto;}

     .message_wrap {max-width: 1000px; margin-right: auto; margin-left: auto;}

     .join_us img { left: 300px;}

     #footer { margin-top: 100px; }
    .footer-text { margin: auto;}
    .footer-text,.footer-content-wrap { max-width: 1200px; }
}

/* for pc2 */
@media (max-width: 1149px) {
    .header .pc-navi {
      .navi-wrap {
          width: 800px;
      }
  }

}



@media(max-width:680px){
.disp-sp{display: inline;}
}