@charset "UTF-8";

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
  padding: 0;
  margin: 0;
  line-height: 1.8em;
}

img {
  border: 0;
  line-height: 0;
  max-width: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  border: 0;
  line-height: 0;
}

ol,
ul {
  list-style: none;
}

body {
  font: 15px/1.5 Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  color: #333;
  -webkit-text-size-adjust: 100%;
}

a:link,
a:visited {
  color: #5b8819;
  text-decoration: none;
}

a:active,
a:focus {
  outline: 0;
}

img {
  border: 0;
}

a img:hover {
  opacity: 0.7;
}

a:hover {
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.clear {
  clear: both;
}

#logo-pc {
  display: block;
}

#logo-sh {
  display: none;
}

#img-pc {
  display: block;
}

#img-sh {
  display: none;
}

#div-pc {
  display: block;
}

#div-sh {
  display: none;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

h3 a {
  padding-top: 40px;
}

/*******************************
レイアウト
*******************************/
#wrapper {
  clear: both;
  margin: 50px auto;
  max-width: 1200px;
  overflow: hidden;
  height: auto;
}

#main {
  float: left;
  width: 100%;
  height: auto;
  overflow: hidden;
  /* margin: 30px 0 0px 0; */
  padding: 0;
}

h3 {
  width: 100%;
  /* height: 36px; */
  float: left;
  margin: 0;
  text-align: center;
  color: #666;
  padding: 30px 0 40px;
  font-size: 20px;
  /* background: #6cb100; */
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

h3 img {
  width: 24px;
  height: 24px;
  float: left;
  margin: 1px 8px 0 0;
  vertical-align: middle;
}

.ado {
  font-size: 14px;
  float: right;
  margin-right: 30px;
}

.ttl_name {
  float: right;
  vertical-align: bottom;
  margin-bottom: 1rem;
}

.ttl_name img {
  /* margin-left: 10px; */
  margin-top: -5px !important;
  float: none;
  width: auto;
  /* height: 85px; */
}

.ttl_name span {
  vertical-align: bottom;
  display: flex;
}

.h3_ttl {
  width: 100%;
  height: 107px;
  line-height: 77px;
  float: left;
  margin: 0;
  color: #ffffff;
  padding: 7px 0px 0px 12px;
  font-size: 18px;
  background: #6cb100;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  overflow: hidden;
  position: relative;
}

.h3_a {
  display: inline;
  position: absolute;
  bottom: 5px;
  font-size: 23px;
}

.h3_ttl .no {
  font-size: 16px;
}

.h3_ttl a {
  padding-top: 0px;
}

.h3_ttl img {
  margin-top: 8px;
}

.yousei li {
  font-size: 13px;
  text-decoration: underline !important;
  margin: 3px;
}

.yousei li a {
  color: #000 !important;
}

/*全体*/
.hidden_box {
  margin: 15px 0;
  /*前後の余白*/
  padding: 0;
}

/*ボタン装飾*/
.hidden_box label {
  padding: 10px;
  /* text-decoration: underline; */
  color: #333;
  cursor: pointer;
  padding-left: 10px;
  position: relative;
  /* font-size: 20px; */
}

/*ボタンホバー時*/
.hidden_box label:hover {
  color: #999;
}

/*チェックは見えなくする*/
.hidden_box input {
  display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
  padding: 10px 0;
  height: auto;
  opacity: 1;
}

.article {
  width: 100%;
  height: auto;
  margin: 1%;
  float: left;
  background: #f6ffed;
  padding: 3%;
  /* border: 2px solid #eaeaea; */
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  /* box-shadow: 0 1px 1px #B2B2B2; */
  /* -webkit-box-shadow: 0 1px 1px #B2B2B2; */
  -moz-box-shadow: 0 1px 1px #b2b2b2;
}

.media h4 {
  border-bottom: 1px dotted #ddd;
  padding: 0px 0px 10px 0px;
  margin-bottom: 15px;
}

.media ul {
  width: 100%;
  overflow: hidden;
  display: block;
  margin: 50px 0 60px;
}

.media ul li {
  text-align: center;
  padding: 0 20px;
  float: left;
}

.media ul li a img {
  border: 3px solid #eee;
}

.mbr_back {
  width: 950px;
  height: auto;
  margin: -4px 0 30px 0;
  float: left;
}

.center {
  display: block;
  margin: 0 auto;
  text-align: center;
}

.left {
  display: inline;
  float: left;
}

.right {
  display: block;
  /* float: right; */
  text-align: right;
  /* width: 80%; */
}

.clear {
  clear: both;
}

.overflow_hidden {
  overflow: hidden;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mb0 {
  margin-bottom: 0;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb60 {
  margin-bottom: 60px;
}

.font_bold {
  font-weight: bold;
}

.color_red {
  color: #c61028;
}

.font_110 {
  font-size: 110%;
}

.smaller {
  font-size: smaller;
}

.font-larger {
  font-size: larger;
}

.font_normal {
  font-weight: normal;
}

.mojisage {
  width: 96%;
  height: auto;
  float: left;
  margin: 0 0 0 4%;
  font-weight: normal;
}

.art_width50_l {
  width: 50%;
  height: auto;
  margin: 0;
  float: left;
}

.kakkosage li {
  list-style-type: none;
  padding-left: 1em;
  text-indent: -1em;
  margin-left: 1em;
}

.font12 {
  font-size: 12px;
}

.jisage {
  padding-left: 1em;
  text-indent: -1em;
}

.nijisage {
  padding-left: 2em;
  text-indent: -2em;
}

.border_radius5 {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

#display_none {
  display: none;
}

.linkbutton {
  margin: 20px 0;
  display: flex;
  justify-content: center;
  text-align: center;
  padding: 17px 10px 12px;
  background: #ebf126;
  box-shadow: 5px 4px 0 #ced413;
  font-size: 20px;
  font-weight: bold;
}

.linkbutton:hover {
  background: #fff200;
}

.linkbutton:after {
  content: "▶";
  font-size: 13px;
  padding-left: 10px;
  color: #e5b000;
}

.plink a {
  text-decoration: underline;
  font-weight: bold;
  color: #ec9d00;
}

/*******************************
４カラム
*******************************/
.col04 {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  float: left;
  margin: -20px -20px 0 0;
}

.col04 a {
  display: block;
}

.col04-1 {
  width: 222px;
  float: left;
  min-height: 300px;
  margin: 20px 20px 0 0;
  border: 8px solid #eff8e0;
  padding: 8px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

/*******************************
ヘッダー
*******************************/
div.headerwrap {
  width: 100%;
  margin: 0;
  display: block;
  padding: 10px 0;
  float: left;
  background: #ffffff;
}

div.header_topbar {
  max-width: 980px;
  height: 80px;
  margin: 0 auto 0;
  border: none;
  padding: 1px;
}

div.headerwrap02 {
  height: 22px;
  width: 100%;
  margin: 0;
  display: block;
  /* float: left; */
  /* background: #a2ab94; */
}

h1.header_h1 {
  width: 1000px;
  height: auto;
  margin: 6% auto 5%;
  font-size: 28px;
  color: #d35904;
  /* padding-left: 20px; */
  text-align: center;
  position: relative;
  padding: 1em 2em;
}

h1.header_h1:before,
h1.header_h1:after {
  position: absolute;
  content: "";
}

h1.header_h1:after {
  top: 0px;
  left: 0px;
  width: 50px;
  height: 50px;
  border-top: 2px dashed #d35904;
  border-left: 2px dashed #d35904;
}

h1.header_h1:before {
  right: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  border-right: 2px dashed #d35904;
  border-bottom: 2px dashed #d35904;
}

div.header_logo {
  width: 27%;
  max-width: 326px;
  max-height: 43px;
  /* overflow: hidden; */
  float: left;
  margin: 2% 0 0px 1%;
}

div.header_logo a {
  width: 100%;
  height: 100%;
  position: relative;
}

.header_dept {
  width: 100%;
  height: auto;
  overflow: hidden;
  float: left;
  font-size: 13px;
  margin: 2% 0 0% 10%;
  line-height: 1.5em;
  color: #a2ab94;
}

.header_dept p {
  margin-top: 10px;
}

.header_dept p:last-child {
  margin-top: 0px;
  margin-left: 105px;
}

.header_tel {
  width: 27.4%;
  max-height: 90px;
  overflow: hidden;
  float: right;
  margin: 0 2% 0 0;
}

.header_tel img {
  width: 100%;
  max-width: 260px;
  max-height: 40px;
  float: left;
  margin: 0;
  overflow: hidden;
}

.header_tel_p01 {
  width: 100%;
  height: auto;
  float: left;
  overflow: hidden;
  margin: 0;
  font-size: 13px;
}

.header_tel_p02 {
  width: 100%;
  height: auto;
  float: left;
  margin: 0;
  font-size: 11px;
  line-height: 1.3;
}

/*******************************
ページトップへ
*******************************/
#page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 70%;
  z-index: 1000;
}

#page-top a {
  background: #ccc;
  text-decoration: none;
  color: #fff;
  width: 80px;
  height: 80px;
  line-height: 5px;
  text-align: center;
  display: block;
  border-radius: 50px;
  padding-top: 40px;
  padding-right: 0;
  padding-bottom: 40px;
  padding-left: 0;
}

#page-top a:hover {
  text-decoration: none;
  background: #999;
}

/*******************************
メインメニュー
*******************************/
.mainMenu {
  width: 100%;
  height: 40px;
  margin: 10px auto 0;
  float: left;
  background: #88bb36;
}

.menu {
  position: relative;
  width: 100%;
  height: 40px;
  max-width: 1100px;
  margin: 0 auto;
}

.menu a {
  text-align: center;
  font-size: 13px;
}

.menu > li {
  float: left;
  width: 16.6%;
  height: 40px;
  line-height: 40px;
  background: #88bb36;
}

.menu > li a {
  display: block;
  color: #ffffff;
  border-right: 1px solid #ffffff;
}

.menu > li > ul > li a {
  display: block;
  color: #ffffff;
  border-right: none;
  padding: 10px 0;
}

.menu a.menu-6,
.menu a.menu-6-1,
.menu a.menu-6-2 {
  border: none;
}

.menu > li a:hover {
  color: #ffffff;
}

.menu > li a:hover {
  background: #7ecc00;
}

ul.sub {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
}

.menu > li.menu_li {
  position: relative;
}

ul.subsub {
  position: absolute;
  /*     top: 40px; */
  left: 0px;
  width: 100%;
  background: #5b9700;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.subsub a {
  text-align: left;
  padding-left: 30px;
}

.subsub li a {
  border: none;
}

.menu > li:hover {
  background: #5b8819;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.sub li:hover {
  background: #68a904;
}

/* floatクリア */
.menu:before,
.menu:after {
  content: " ";
  display: table;
}

.menu:after {
  clear: both;
}

.menu {
  *zoom: 1;
}

.menu > li.menu_li {
  position: relative;
}

li.menu_li ul.sub {
  position: absolute;
  top: 40px;
  width: 100%;
  background: #5b8819;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

li.menu_li ul.sub li {
  padding: 0px 0;
  border-bottom: 1px solid #71a722;
}

li.menu_li:hover ul.sub {
  top: 40px;
  visibility: visible;
  opacity: 1;
}

.menu a.we {
  padding-top: 5px;
  line-height: 1.2;
  height: 100%;
}

/*******************************
/* フッター
*******************************/
#footerwrap {
  height: 35rem;
  width: 100%;
  /* margin: 10px auto 0; */
  float: left;
  background: #6cb100;
  position: relative;
}

.footer_main {
  width: 90%;
  height: 35rem;
  margin: 0 auto;
  padding: 0;
  color: #ffffff;
  /* font-size: 13px; */
}

.footer_img01 {
  /*width:326px;
	height:36px;*/
  /* float: left; */
  margin: 25px 0px 0px 50px;
  width: 50%;
}

.footer_officeinfo {
  width: auto;
  /* height: 50px; */
  /* float: right; */
  margin: 20px 0px 0 50px;
  color: #ffffff;
  font-size: 14px;
  font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
}

div.addressbox {
  width: 100%;
  height: 20px;
  margin: 0 auto;
  color: #ffffff;
  text-align: center;
  padding: 1px 0 0;
  font-size: 11px;
  bottom: 10px;
  position: absolute;
}

.medical_list {
  float: left;
  width: 480px;
  position: relative;
  margin-top: 10px;
  border-top: 2px solid #e7e7e7;
  border-bottom: 2px solid #e7e7e7;
  padding-top: 15px;
  padding-bottom: 15px;
  margin-bottom: 10px;
  box-sizing: border-box;
}
.medical_list h4 {
  position: absolute;
  top: 0px;
  left: 0px;
  font-size: 15px;
  font-weight: 500;
}
.medical_list .list {
  float: left;
  width: 100%;
  position: relative;
  padding-left: 150px;
  box-sizing: border-box;
}
.medical_list .time {
  float: left;
  width: 100%;
  position: relative;
  border-left: 2px solid #e7e7e7;
  padding-left: 20px;
  padding-bottom: 10px;
  box-sizing: border-box;
  height: 50px;
}
.medical_list .time dt {
  float: left;
  width: 140px;
  position: relative;
  text-align: left;
  margin-right: 20px;
}
.medical_list .time dt span {
  display: inline-block;
  width: 100%;
  position: relative;
  font-size: 15px;
  font-weight: 500;
}
.medical_list .time dt span:before {
  content: "";
  width: 100%;
  height: 6px;
  position: absolute;
  bottom: 3px;
  left: 0px;
  background-color: #f9d3cd;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  z-index: -1;
}
.medical_list .time dd {
  float: left;
  position: relative;
  font-size: 15px;
  font-weight: 500;
}
.medical_list .free {
  float: left;
  width: 100%;
  position: relative;
  padding-left: 20px;
  border-left: 2px solid #e7e7e7;
  padding-bottom: 5px;
  box-sizing: border-box;
}
.medical_list .free dt {
  float: left;
  position: relative;
  font-size: 15px;
  font-weight: 500;
  margin-right: 88px;
}
.medical_list .free dd {
  float: left;
  position: relative;
  text-align: left;
}
.medical_list .free dd span {
  display: inline-block;
  width: 100%;
  position: relative;
  font-size: 13px;
  font-weight: 500;
  padding-left: 3px;
  box-sizing: border-box;
}
.medical_list .free dd span:before {
  content: "";
  width: 100%;
  height: 6px;
  position: absolute;
  bottom: 6px;
  left: 0px;
  background-color: #f9d3cd;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  z-index: -1;
}

.mb20 {
  margin-bottom: 20px;
}

.box01 {
  float: left;
  width: 100%;
  position: relative;
}

/*******************************
/* トップページ
*******************************/
.top_art02_p img {
  margin: 5px;
}

.top_mainimg {
  /* width: 950px; */
  /* height: 200px; */
  margin: 20px auto 0;
}

.top_message {
  width: 950px;
  height: auto;
  margin: 0 0 20px 0;
  float: left;
  background: #ffffff;
}

.top_art01_p {
  width: 890px;
  height: auto;
  float: left;
}

.medical_bnr {
  margin-top: 30px;
  width: 100%;
  height: auto;
  float: left;
}

.medical_bnr li a {
  width: 32%;
  height: 276px;
  float: left;
  margin: 0.5%;
  border: 4px solid #e1ecb5;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -moz-box-shadow: 1px 1px 6px 3px #666666;
  color: #333;
}

.medical_bnr li strong {
  display: block;
  font-size: 21px;
  text-align: center;
  margin: 10px auto 0;
}

.medical_bnr li p {
  display: block;
  font-size: 15px;
  text-align: center;
  margin: 0 auto 0;
}

.medical_bnr li a.medical01_li {
  background: url("images/medical01_img.jpg") no-repeat 50% 66px;
}

.medical_bnr li a.medical02_li {
  background: url("images/medical02_img.jpg") no-repeat 50% 62px;
}

.medical_bnr li a.medical03_li {
  background: url("images/medical03_img.jpg") no-repeat 50% 62px;
}

.medical_bnr li a.medical04_li {
  background: url("images/medical04_img.jpg") no-repeat 50% 56px;
}

.medical_bnr li a.medical05_li {
  background: url("images/medical05_img.jpg") no-repeat 50% 56px;
}

.medical_bnr li a.medical06_li {
  background: url("images/medical06_img.jpg") no-repeat 50% 60px;
}

.top_art02_p {
  /* width: 890px; */
  height: auto;
  /* float: left; */
  margin: 20px 0 0 20px;
}

.top_art03_p {
  width: 890px;
  height: auto;
  /* float: left; */
  margin: 10px 0 0 20px;
  font-size: 13px;
}

.top_art02_a {
  width: auto;
  height: auto;
  float: right;
  margin: 10px 20px 0 0;
  color: #036eb8;
  overflow: hidden;
}

.top_p {
  /* width: 890px; */
  height: auto;
  display: inline-block;
  /* float: left; */
  margin: 10px 45px;
}

.top_movie01 {
  width: 480px;
  height: 270px;
  /* float: left; */
  margin: 20px 0 0 20px;
}

.top_movie02 {
  width: 480px;
  height: 270px;
  /* float: left; */
  margin: 20px 0 0 20px;
}

.top_h4 {
  border-bottom: 1px solid #c9d0bf;
  padding-bottom: 10px;
  margin-bottom: 10px;
  width: 100%;
  max-width: 856px;
  height: auto;
  /* float: left; */
  font-size: 18px;
  margin: 20px 0 10px 20px;
}

.top_h5 {
  width: 100%;
  max-width: 720px;
  height: auto;
  float: left;
  font-size: 16px;
  margin: 20px 0 0 20px;
}

.fs_15 {
  font-size: 15px !important;
}

.top_border {
  border: solid 1px #000;
  border: solid 1px #000;
  padding-bottom: 20px;
  font-size: 13px;
  padding-left: 10px;
  margin-top: 15px;
  clear: both;
  display: block;
}

.it {
  font-style: italic;
}

.top_h4 a {
  width: auto;
  height: auto;
  font-size: smaller;
  font-weight: normal;
}

.top_art04_p {
  height: auto;
  float: left;
  margin: 0 0 0 20px;
}

.top_table_t01 {
  height: auto;
  /* float: left; */
  margin: 0 0 0 20px;
}

.top_table_t01 th {
  vertical-align: top;
  font-weight: normal;
}

.top_table_t02 {
  width: 100%;
  max-width: 720px;
  height: auto;
  float: left;
  margin: 0 0 0 20px;
}

.top_table_t02 th {
  width: 30%;
  padding: 10px;
  text-align: left;
  border-bottom: 1px dotted #333;
}

.top_table_t02 td {
  /* width: 70%; */
  padding: 10px;
  text-align: right;
  border-bottom: 1px dotted #333;
}

.top_newsimg {
  width: 480px;
  height: 272px;
  float: left;
  margin: 20px 0 0 20px;
}

.top_box-01 {
  margin-top: 30px;
}

.top_img_t01 {
  width: 15% !important;
  /* height: 200px; */
  /* float: left; */
  margin: 20px 0 0 20px;
}

.top_cap01 {
  width: auto;
  height: auto;
  /* float: left; */
  margin: 20px 0 0 20px;
}

.mednews_responsive-table {
  display: table;
  width: 910px;
  float: left;
  margin: 20px 0 0 20px;
  border: none;
  text-align: left;
}

.mednews_responsive-row {
  width: 910px;
  height: auto;
  float: left;
  display: table-row;
  margin: 0 0 1em;
  border-bottom: 2px dotted #4b819b;
}

.mednews_responsive-row:last-child {
  border: none;
  margin: 0;
}

.mednews_responsive-title {
  display: table-cell;
  padding: 0.5em 0 0 0;
  width: 0;
  height: auto;
  font-size: 12px;
  font-style: oblique;
  vertical-align: middle;
}

.mednews_responsive-cell {
  display: table-cell;
  width: 910px;
  padding: 0 0 0.5em;
  height: auto;
  border-bottom: none;
  vertical-align: middle;
  line-height: 1.4;
}

ol.list_parentheses {
  padding: 0 0 0 0;
  margin: 0;
}

ol.list_parentheses li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  margin-bottom: 2px;
}

ol.list_parentheses li:before {
  display: marker;
  content: "" counter(cnt) ")  ";
  margin-right: 0.3em;
}

ol.list_parentheses li p {
  text-indent: 0em;
  padding-left: 1em;
}

table.table01 {
  width: 100%;
  border-right: #3eb1c6 solid 1px;
  border-collapse: collapse;
}

table.table01 thead th {
  background: #3eb1c6;
  color: #fff;
  padding: 10px 15px;
  border-right: #fff solid 1px;
  border-bottom: #fff solid 1px;
}

table.table01 thead th:last-child {
  border-right: #3eb1c6 solid 1px;
}

table.table01 tbody th {
  background: #3eb1c6;
  color: #fff;
  padding: 10px 15px;
  border-bottom: #fff solid 1px;
  vertical-align: top;
}

table.table01 tbody tr:last-child th {
  border-bottom: #3eb1c6 solid 1px;
}

table.table01 tbody td {
  background: #fff;
  padding: 10px 15px;
  border-left: #3eb1c6 solid 1px;
  border-bottom: #3eb1c6 solid 1px;
  vertical-align: top;
}

ol.list_parentheses2 {
  padding: 0 0 0 0;
  margin: 0 10px 10px 0px;
}

ol.list_parentheses2 li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  clear: both;
}

ol.list_parentheses2 li p {
  text-indent: 0em;
  padding-left: 1em;
  margin: 0 0 0 0;
}

ul.list_parentheses3 {
  padding: 0 0 0 0;
  margin: 0 10px 10px 0px;
}

/* -------------------------20180626-------------------------- */
ul.list_parentheses3 li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  clear: both;
  font-weight: 600;
}

ul.list_parentheses3 li:nth-child(n + 2) {
  margin: 10px 0 0 0;
}

ul.list_parentheses3 li p {
  text-indent: 0em;
  padding-left: 3em;
  margin: 0 0 0 0;
  font-weight: 400;
}

ul.sousetsu_list li {
  margin-bottom: 10px;
}

.annual {
  border: 1px solid #5b8819;
  padding: 3px;
  color: #fff;
}

/*******************************
/* 新宿漢方クリニックのご案内
*******************************/
.clinic_article {
  width: 950px;
  height: auto;
  margin: 14px 0 30px 0;
  float: left;
  background: #f8eced;
  padding-bottom: 20px;
  border: 2px solid #c95f6a;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  box-shadow: 0 1px 1px #4b819b;
  -webkit-box-shadow: 0 1px 1px #4b819b;
  -moz-box-shadow: 0 1px 1px #4b819b;
}

.clinic_topimg {
  width: 950px;
  height: 220px;
  margin: 20px auto 0;
  border: 1px solid #3e3a39;
}

.clinic_top01 {
  width: 600px;
  height: auto;
  float: left;
  margin: 25px 0 0 25px;
}

.clinic_topimg h2 {
  width: 600px;
  height: auto;
  float: left;
  font-size: 24px;
  margin: 0;
}

.clinic_topimg p {
  width: 600px;
  height: auto;
  float: left;
  margin: 10px 0 0 0;
}

.clinic_topimg img {
  width: 270px;
  height: 180px;
  float: right;
  margin: 20px 20px 0 0;
}

.clinic_art01_01 {
  width: 210px;
  height: 280px;
  float: right;
  margin: 20px 20px 0 0;
}

.clinic_art01_01 img {
  width: 210px;
  height: 280px;
  float: left;
  margin: 0;
}

.clinic_art01_01 b {
  width: 210px;
  height: auto;
  float: left;
  margin: 10px 0 0 0;
  font-size: 18px;
}

.clinic_art01_01 p {
  width: 210px;
  height: auto;
  float: left;
  margin: 4px 0 0 0;
  font-size: 14px;
}

.clinic_art01_02 {
  width: 650px;
  height: auto;
  float: left;
  margin: 0px 0 0 20px;
}

.clinic_art01_02 h4 {
  width: 98%;
  height: auto;
  float: left;
  font-size: 18px;
  margin-top: 20px;
  margin-bottom: 10px;
  border-bottom: 1px solid #3e3a39;
}

.clinic_art01_02 p {
  width: 650px;
  height: auto;
  float: left;
  margin: 4px 0 0 0;
}

.clinic_art02_01 {
  width: 910px;
  height: auto;
  float: left;
  margin: 20px 0s;
}

.clinic_art02_01 h4 {
  width: 100%;
  padding-bottom: 10px;
  height: auto;
  float: left;
  margin: 0;
  font-size: 18px;
  border-bottom: 1px solid #3e3a39;
}

.clinic_responsive-table {
  padding-top: 30px;
  display: table;
  width: 100%;
  float: left;
  margin: 10px 0 0 0;
  /* border: 1px solid #889649; */
  text-align: left;
  border-bottom: none;
}

.clinic_responsive-row {
  height: auto;
  float: left;
  display: table-row;
  margin: 0;
}

.clinic_responsive-title {
  display: table-cell;
  padding: 0.5em 0 0.5em 1em;
  width: 120px;
  height: auto;
  font-weight: bold;
  vertical-align: top;
  background: #a2af6f;
  color: #ffffff;
  border-bottom: 1px solid #889849;
}

.clinic_responsive-cell {
  display: table-cell;
  padding: 0.5em 0 0.5em 1em;
  width: 790px;
  height: auto;
  border-bottom: 1px solid #aeb493;
  vertical-align: middle;
  line-height: 1.3;
}

.clinic_art02_02 {
  width: 500px;
  height: auto;
  float: left;
  margin: 0 0 0 20px;
  overflow: hidden;
}

.clinic_art02_02 h4 {
  width: 500px;
  height: auto;
  float: left;
  margin: 20px 0 0 0;
  font-size: 18px;
  border-bottom: 1px solid #3e3a39;
}

.clinic_art02_02 img {
  width: auto;
  height: auto;
  float: left;
  margin: 10px 0 0 0;
}

.clinic_art02_02 p {
  width: 100%;
  height: auto;
  float: left;
  margin: 10px 0 0 0;
  overflow: hidden;
}

.clinic_art02_03 {
  width: 252px;
  height: auto;
  float: right;
  margin: 20px 50px 0 0;
}

.clinic_art03 {
  width: 910px;
  height: auto;
  overflow: hidden;
  margin: 20px 0 0 20px;
}

.clinic_art03 h4 {
  width: 100%;
  height: auto;
  float: left;
  font-size: 18px;
  margin: 0 0 20px 0;
  border-bottom: 1px solid #3e3a39;
}

.clinic_article .clinic_art03 h4 {
  color: #ce8345;
  border-bottom: 1px solid #ce8345;
}

/*******************************
/* 症状別治療例
*******************************/
.medical_topimg {
  width: 950px;
  height: auto;
  margin: 20px auto 0;
  border: 1px solid #3e3a39;
  overflow: hidden;
}

.medical_topimg03 {
  width: 950px;
  height: auto;
  margin: 30px auto 0;
  border: 1px solid #3e3a39;
  overflow: hidden;
}

.medical_top02 {
  width: 400px;
  height: auto;
  /*float:left;*/
  margin: 0 auto;
}

.medical_topimg02 {
  width: 950px;
  height: auto;
  margin: 20px auto 0;
  border: 1px solid #3e3a39;
  overflow: hidden;
  padding: 20px;
}

.medical_top01 {
  width: 600px;
  height: auto;
  float: left;
  margin: 15px 0 0 20px;
}

.medical_topimg h2 {
  width: 600px;
  height: auto;
  float: left;
  margin: 0;
}

.medical_topimg p {
  width: 600px;
  height: auto;
  float: left;
  margin: 0;
  padding-left: 2em;
  text-indent: -2em;
}

.medical_topimg img {
  width: 200px;
  height: 200px;
  float: right;
  margin: 0 80px 0 0;
}

.medical_top03 {
  width: 700px;
  height: auto;
  float: left;
}

.medical_topimg02 h2 {
  width: 680px;
  height: auto;
  float: left;
  margin: 0;
}

.medical_topimg02 p {
  height: auto;
  float: left;
  margin: 0;
}

.medical_topimg02 img {
  width: 200px;
  height: 200px;
  float: right;
}

.medical_art01 {
  width: 910px;
  height: auto;
  float: left;
  margin: 30px 0 0 20px;
}

.medical_art03 {
  width: 910px;
  height: auto;
  float: left;
}

.medical_art01_01 {
  width: 30%;
  padding-right: 20px;
  height: auto;
  float: left;
  margin: 0;
}

.medical_art01_01 img {
  width: 100%;
  height: auto;
  margin: 0 0 10px 0;
}

.medical_art01_01 p {
  width: 100%;
  height: auto;
  margin: 0;
  font-size: 14px;
}

.medical_art01_02 {
  width: 70%;
  height: auto;
  float: right;
  margin: 0;
}

.medical_art01_02 h4 {
  width: 600px;
  height: auto;
  float: left;
  margin: 0;
  font-size: 18px;
  border-bottom: 1px solid #3e3a39;
}

.medical_art01_02 h5 {
  width: 600px;
  height: auto;
  float: left;
  margin: 4px 0 0 0;
  font-size: 14px;
}

.medical_art01_02 p {
  width: 600px;
  height: auto;
  float: left;
  margin: 10px 0 0 0;
  font-size: 14px;
}

.medical_art02 {
  width: 600px;
  height: auto;
  float: right;
  margin: 20px 20px 0 0;
}

.medical_art02 li {
  list-style-type: none;
  font-size: 13px;
  padding-left: 1em;
  text-indent: -1em;
}

.fn01 {
  font-size: small;
}

.med_movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  float: left;
  margin: 0;
}

.med_movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.history_responsive-table {
  display: table;
  width: 910px;
  float: left;
  margin: 0;
  border: none;
  text-align: left;
  border-bottom: none;
}

.history_responsive-row {
  width: 910px;
  height: auto;
  float: left;
  display: table-row;
  margin: 0 0 20px 0;
}

.history_responsive-img {
  display: table-cell;
  padding: 0;
  width: 310px;
  height: auto;
  vertical-align: top;
}

.history_responsive-img img,
.history_responsive-img p {
  margin: 0 0 0 30px;
}

.history_responsive-title {
  display: table-cell;
  padding: 0 0 0.5em 0;
  width: 70px;
  height: auto;
  font-weight: bold;
  vertical-align: top;
}

.history_responsive-cell {
  display: table-cell;
  padding: 0 30px 0 0;
  width: 514px;
  height: auto;
  vertical-align: top;
  line-height: 1.3;
}

.history_responsive-cell img {
  margin: 15px 0 0 0;
}

/*******************************
/* 交通アクセス
*******************************/
.acs_art01 h4 {
  width: 910px;
  height: auto;
  float: left;
  margin: 20px 0 0 20px;
  font-size: 18px;
  border-bottom: 1px solid #3e3a39;
}

.acs_art01 p {
  width: 910px;
  height: auto;
  float: left;
  margin: 4px 0 0 20px;
}

.acs_route {
  width: 290px;
  height: 350px;
  float: left;
  margin: 20px 0 0 20px;
}

.acs_route img {
  width: 290px;
  height: 220px;
  float: left;
  margin: 0;
}

.acs_route h5 {
  width: 290px;
  height: auto;
  float: left;
  margin: 10px 0 0 0;
  font-size: 14px;
  border-bottom: 1px solid #3e3a39;
}

.acs_route p {
  width: 290px;
  height: auto;
  float: left;
  margin: 4px 0 0 0;
}

.acs_map {
  width: 910px;
  height: 600px;
  float: left;
  margin: 10px 0 0 20px;
}

.clinic_appearance01 {
  width: 400px;
  height: auto;
  float: left;
  margin: 20px 0 0 20px;
}

.clinic_appearance02 {
  width: 225px;
  height: auto;
  float: left;
  margin: 20px 0 0 30px;
}

.clinic_appearance01 p,
.clinic_appearance02 p {
  width: 100%;
  text-align: left;
  margin: 0;
}

.garden_seasons {
  width: 870px;
  height: auto;
  float: left;
  margin: 0 0 0 20px;
}

.garden_seasons li {
  width: 32%;
  float: left;
  margin: 2% 0 0 2%;
}

.garden_seasons li.garden_seasons01 {
  margin: 2% 0 0;
}

.clinic_appearance01 img:hover,
.clinic_appearance02 img:hover,
.garden_seasons img:hover {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

/*******************************
/* お問い合わせ
*******************************/
.contact_art01 h4 {
  width: 910px;
  height: auto;
  float: left;
  margin: 20px 15rem 0px 20px;
  font-size: 18px;
  border-bottom: 1px solid #3e3a39;
}

.contact_art01 p.contact_art01_p {
  width: 910px;
  height: auto;
  float: left;
  margin: 4px 0 0 20px;
}

.contact_art01 form {
  width: 100%;
  height: auto;
  overflow: hidden;
  float: left;
  margin: 2% 0 0;
}

.contact_tel {
  width: 242px;
  height: 36px;
  float: left;
  margin: 0 0 0 20px;
}

.contact_responsive-table {
  display: table;
  width: 910px;
  float: left;
  margin: 10px 0 0 20px;
  border: 1px solid #4b819b;
  text-align: left;
  border-bottom: none;
}

.contact_responsive-row {
  width: 910px;
  height: auto;
  /* float: left; */
  display: table-row;
  margin: 0;
}

.contact_responsive-title {
  display: table-cell;
  padding: 0.5em 0.5em 0.5em 1em;
  width: 180px;
  height: auto;
  font-weight: bold;
  vertical-align: top;
  background: #6f9aaf;
  color: #ffffff;
  border-bottom: 1px solid #4b819b;
}

.contact_responsive-cell {
  display: table-cell;
  padding: 0.5em 0 0.5em 0;
  width: 730px;
  height: auto;
  border-bottom: 1px solid #4b819b;
  vertical-align: middle;
  line-height: 1.3;
}

.contact_submit01,
.contact_submit02 {
  width: auto;
  height: auto;
  padding: 0.5em 1em;
  text-align: center;
}

.contact_submit01 {
  background: #ffffff;
  border: 2px solid #4b819b;
  float: left;
  margin: 20px 0 0 37%;
}

.contact_submit02 {
  background: #4b819b;
  color: #ffffff;
  float: right;
  margin: 20px 37% 0 0;
}

.form_c_name,
.form_c_kana,
.form_c_email,
.form_m_conf,
.form_c_age,
.form_z_name,
.form_z_mail,
.form_c_dob,
.form_zip_code,
.form_tel_num,
.form_kana,
.form_e_mail2,
.form_dob {
  width: 400px;
  height: 24px;
  margin: 0 0 0 1em;
}

.form_c_add,
.form_z_add {
  width: 710px;
  height: 24px;
  margin: 0 0 0 1em;
}

.form_c_symptom,
.form_serious {
  width: 710px;
  height: 100px;
  margin: 0 0 0 1em;
}

input[name="c_name"],
input[name="c_kana"],
input[name="c_email"],
input[name="m_conf"],
input[name="c_age"],
input[name="zip_code"],
input[name="tel_num"] {
  width: 400px;
  height: 24px;
  margin: 0 0 0 1em;
}

input[name="c_add"] {
  width: 710px;
  height: 24px;
  margin: 0 0 0 1em;
}

input[type="file"] {
  margin: 0 0 0 1em;
}

.contact_responsive-cell textarea {
  width: 710px;
  height: 100px;
  margin: 0 0 0 1em;
}

select {
  margin: 0 0 0 1em;
}

input[type="radio"],
input[type="checkbox"] {
  vertical-align: middle;
  margin: 3px 0.2em 0 1.5em;
}

.mf01_p {
  width: 910px;
  height: auto;
  float: left;
  margin: 10px 0 20px 20px;
  color: #4b819b;
  font-size: 18px;
}

.error {
  margin: 0 0 0 1em;
  color: #c61028;
}

fieldset {
  border: none;
}

/*******************************
/* 舌診スキャン無料健康相談フォーム
*******************************/
.zessinn_img01 {
  width: 90px;
  height: 120px;
  float: left;
  margin: 1.5rem 0 0 1.5rem;
}

.contact_art02_p01 {
  width: 315px;
  overflow: hidden;
  float: left;
  margin: 20px 0 0 20px;
}

.zessinn_img02 {
  width: 170px;
  height: 120px;
  float: left;
  margin: 20px 0 0 20px;
}

.contact_art02_p02 {
  width: 235px;
  height: 120px;
  overflow: hidden;
  float: left;
  margin: 20px 0 0 20px;
}

a.top_zessinn_btn {
  width: 26%;
  height: auto;
  float: right;
  margin: 20px 37% 0 0;
  font-size: 18px;
  font-weight: bold;
  padding: 0.3em 0.8em 0.2em;
  color: #4b819b;
  text-align: center;
  border: 2px solid #4b819b;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

input[name="z_photo"] {
  width: auto;
  height: auto;
  padding: 0 0 0 1em;
}

/*******************************
/* 生薬（煎じ薬）とは
*******************************/
.shou_h4_01,
.shou_h4_02,
.shou_h4_03 {
  width: 100%;
  height: auto;
  float: left;
  font-size: 18px;
  margin: 20px 0 0 20px;
}

.shou_h4_02 {
  margin: 10px 0 0 20px;
}

.shou_art_p01,
.shou_art_p02 {
  /*     width:910px; */
  height: auto;
  float: left;
  margin: 20px 0 0 20px;
}

.shou_art_p02 {
  margin: 0 0 0 20px;
}

.shou_h4_03 {
  font-size: 16px;
  color: #6bb100;
}

.shou_art05 ol {
  margin: 0 0 1em 20px;
}

.shou_art05 dl {
  width: 910px;
  margin-bottom: 1em;
}

.shou_art05 dl dt {
  font-weight: bold;
}

.shou_art05 {
  width: 96%;
  height: auto;
  overflow: hidden;
  float: left;
  margin: 20px 2%;
  display: table;
  border-right: 1px solid #4b819b;
  border-bottom: 1px solid #4b819b;
}

.shou_art05_img01 {
  /*     width:910px; */
  height: auto;
  overflow: hidden;
  float: left;
  margin: 20px 0 0 20px;
}

.shou_art05_p01 {
  display: none;
}

.shou_art05 .shou_art05_ex {
  display: table-header-group;
}

.shou_art05 ol {
  display: table-row;
  margin: 0;
}

.shou_art05 ol li {
  display: table-cell;
  padding: 0.5em 1em;
  font-weight: bold;
  text-align: center;
  background: #2b8607;
  color: #ffffff;
  border-left: 1px solid #87bb36;
  border-top: 1px solid #87bb36;
}

.shou_art05 .shou_art05_word {
  display: table-row-group;
}

.shou_art05 dl {
  display: table-row;
  margin: 0;
}

.shou_art05 dl dt,
.shou_art05 dl dd {
  display: table-cell;
  padding: 0.5em 1em;
  border-left: 1px solid #87bb36;
  border-top: 1px solid #87bb36;
}

/*******************************
/* 遠隔診療
*******************************/
a.form_link_btn {
  clear: both;
  width: 48%;
  height: auto;
  float: right;
  margin: 20px 5% 0 0;
  font-size: 18px;
  font-weight: bold;
  padding: 0.3em 0.8em 0.2em;
  color: #4b819b;
  text-align: center;
  border: 2px solid #4b819b;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

/*******************************
/* お知らせ
*******************************/
.news_responsive-table {
  display: table;
  float: left;
  border: none;
  text-align: left;
}

.news_responsive-row {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
}

.news_responsive-title {
  display: block;
  padding: 0.3em 0 0.2em 1em;
  /* width: 908px; */
  height: auto;
  margin: 20px 0;
  font-size: 16px;
  vertical-align: middle;
  background: #6bb100;
  color: #ffffff;
  border-radius: 15px;
  text-align: center;
}

.news_responsive-cell {
  display: block;
  padding: 0.5em 1em 0.5em;
  /*         width:908px; */
  height: auto;
  float: left;
  border-bottom: none;
  vertical-align: middle;
  line-height: 1.4;
}

.news_responsive-cell a {
  color: #c95f6a;
  font-weight: bold;
  text-decoration: underline;
}

/*
.news_responsive-cell a.news_pdf{
    display:block;
    width:100%;
}
*/
.news_img50 {
  width: 50%;
  margin: 6px 0 6px;
}

.news_col3 {
  width: 100%;
  height: auto;
  overflow: hidden;
  float: left;
  margin: 0 -31px 0 0;
}

.news_col3-1,
.news_col3-2 {
  width: 276px;
  float: left;
  margin: 10px 20px 6px 0;
}

.news_col3-2 {
  margin: 10px 0 6px 0;
}

.news_poster_img {
  width: 180px;
  float: left;
  margin: 10px 40px 6px 0;
}

/*******************************
/* 冬虫夏草
*******************************/
.touchu_art01_img01 {
  width: 80%;
  border: 1px solid #999;
  margin: 10px 0 20px 20px;
}

.touchu_news01_01 {
  height: auto;
  float: left;
  margin: 20px 0 0 20px;
}

.touchu_img-box {
  width: 100% !important;
}

.touchu_news01_01 img {
  width: 31%;
  /* float: left; */
  margin: 0 2.5% 10px 0;
}

.touchu_news01_01 img.touchu_art01_img02 {
  margin: 0 0 10px;
}

.touchu_news01_01 p {
  clear: both;
  width: 100%;
}

.touchu_news01_02 {
  width: 435px;
  height: auto;
  float: right;
  margin: 20px 20px 0 0;
}

.touchu_news01_01 h4.top_h4 {
  margin: 0 0 10px 0;
}

.touchu_art02_p {
  height: auto;
  float: left;
  margin: 20px 0 0 20px;
}

/*******************************
/* その他の治療例のご紹介
*******************************/
.med06_h4 {
  width: 100%;
  height: auto;
  float: left;
  font-size: 18px;
}

.med06_art01 {
  width: 910px;
  height: auto;
  overflow: hidden;
  float: left;
  margin: 10px 0 0 20px;
  padding: 10px 20px 20px;
  border: 1px solid #3e3a39;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

.med06_art01 .med06_h4 {
  margin: 0;
}

.med06_art01.mt20 {
  margin: 20px 0 0 20px;
}

.med06_art_p01,
.med06_art_p02 {
  width: 910px;
  height: auto;
  float: left;
}

.med06_art_p02 {
  height: auto;
  float: left;
}

.med06_art_p03 {
  width: 870px;
  height: auto;
  float: left;
  margin: 6px 0 0;
}

.med06_h5 {
  width: 100%;
  height: auto;
  float: left;
  margin: 10px 0 0 20px;
  font-size: 15px;
}

.med06_table {
  width: 910px;
  height: auto;
  float: left;
  margin: 10px 0 30px 0px;
  border: 1px solid #4b819b;
  text-align: left;
}

.med06_table tr {
  width: 100%;
}

.med06_th01,
.med06_th02,
.med06_th03 {
  padding: 1em;
  background: #6bb100;
  color: #ffffff;
  font-size: 17px;
}

.med06_th01 {
  width: 6em;
  border-right: 1px solid #ffffff;
}

.med06_th02 {
  width: 15em;
  border-right: 1px solid #ffffff;
}

.med06_table td {
  padding: 1em;
  border-bottom: 1px solid #69b100;
  border-right: 1px solid #69b100;
}

.med06_table td.med06_td01 {
  background: #5c9702;
  color: #ffffff;
}

/*******************************
/* 症例集
*******************************/
.case_category_topimg {
  width: 950px;
  height: 220px;
  float: left;
  margin: 0 auto 30px;
  border: 1px solid #3e3a39;
}

.case_category_topimg img {
  width: 270px;
  height: 180px;
  float: right;
  margin: 20px 20px 0 0;
}

.caselist_art1,
.case_art1,
.category_art1,
.category_art3 {
  width: 910px;
  height: auto;
  overflow: hidden;
  float: left;
  margin: 20px 0 0 20px;
}

.category_art1 {
  width: 930px;
}

.case_p {
  width: 100%;
  height: auto;
  margin: 0;
  float: left;
}

.case_p2 {
  width: 100%;
  height: auto;
  margin: 0 0 20px;
  float: left;
}

.case_p3 {
  width: 100%;
  height: auto;
  margin: 0;
  float: left;
  padding: 20px;
  border-bottom: 1px dotted #333;
}

.caselist_art1 h4,
.case_art1 h4 {
  width: 100%;
  height: auto;
  margin: 20px 0 10px;
  float: left;
  font-size: 18px;
  border-bottom: 2px solid #333;
}

.case_art1 h4:first-child {
  margin: 0 0 10px;
}

a.case_detail_btn {
  width: 26%;
  height: auto;
  float: right;
  margin: 20px 0 0;
  font-size: 18px;
  font-weight: bold;
  padding: 0.3em 0.8em 0.2em;
  color: #4b819b;
  text-align: center;
  border: 2px solid #4b819b;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

.case_art2 {
  width: 910px;
  height: auto;
  overflow: hidden;
  float: left;
  margin: 0;
  border: 1px dotted #333;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

.case_photo {
  width: 870px;
  height: auto;
  margin: 20px 0 0 20px;
  float: left;
  padding-bottom: 20px;
  border-bottom: 1px dotted #333;
}

.case_photo1,
.case_photo2,
.case_photo3 {
  width: 50%;
  height: auto;
  margin: 0 49% 0 0;
  float: left;
}

.case_photo2,
.case_photo3 {
  margin: 0 0 0 5%;
}

a.caselist_back {
  width: auto;
  height: auto;
  float: left;
  margin: 20px 0 0 20px;
  font-size: 16px;
}

.category_art1 h4 {
  width: 30%;
  height: auto;
  margin: 30px 0 10px;
  float: left;
  /*font-size: 18px;*/
  border-bottom: 1px dotted #333;
}

a.category_btn,
a.category_btn2 {
  width: 17%;
  height: auto;
  float: left;
  margin: 20px 3% 10px 0;
  /*font-size:18px;*/
  font-weight: bold;
  padding: 0.3em 0.8em 0.2em;
  color: #4b819b;
  text-align: center;
  border: 2px solid #4b819b;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

a.category_btn2 {
  margin: 0 3% 10px 0;
}

.category_art3 h4 {
  width: 70%;
  height: auto;
  margin: 10px 0 0;
  float: left;
  /*font-size: 18px;*/
  border-bottom: 1px dotted #333;
}

a.category_btn2 {
  width: 27%;
}

/*******************************
/* 渡世エッセイ
*******************************/
.essay_topimg {
  width: 950px;
  height: auto;
  float: left;
  margin: 0 auto 30px;
  border: 1px solid #3e3a39;
  padding: 0 0 30px 0;
}

.essay_topimg img {
  width: 270px;
  height: 180px;
  float: right;
  margin: 20px 20px 0 0;
}

.essay_art01 {
  /*     width:908px; */
  height: auto;
  float: left;
  overflow: hidden;
  margin: 20px 0 0 19px;
}

.essay_img {
  float: right;
  margin-left: 20px;
}

.essay_img p {
  width: 290px;
}

.essay_art01 p {
  margin: 6px 0 12px;
}

.essay_title {
  width: 950px;
  height: auto;
  float: left;
  margin: 0 auto 30px;
  border: 1px solid #3e3a39;
  padding: 0 0 25px;
}

.essay_title img {
  float: right;
  margin: 20px 20px 0 0;
}

.essay_title img.essay3_3img {
  float: right;
  margin: 60px 20px 0 0;
}

h4.essay_art_h4_02,
p.essay_art_p_02 {
  width: 578px;
  float: left;
}

.essay_link_area {
  width: 100%;
  height: auto;
  float: left;
  overflow: hidden;
  margin: 30px 0 0 0px;
}

.essay_link_area01 {
  width: 48%;
  height: auto;
  float: left;
  margin: 0;
}

.essay_link_area02 {
  width: 48%;
  height: auto;
  float: right;
  margin: 0;
}

a.essaye_link_btn,
.essayAll_btn {
  width: 100%;
  height: auto;
  float: right;
  margin: 20px 0 0 0;
  font-size: 18px;
  font-weight: bold;
  padding: 0.3em 0.8em 0.2em;
  color: #4b819b;
  text-align: center;
  border: 2px solid #4b819b;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

a.essayw_link_btn {
  width: 100%;
  height: auto;
  float: left;
  margin: 20px 0 0 0;
  font-size: 18px;
  font-weight: bold;
  padding: 0.3em 0.8em 0.2em;
  color: #4b819b;
  text-align: center;
  border: 2px solid #4b819b;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

.essay_cont01 {
  width: 950px;
  height: auto;
  margin: 0;
  float: left;
}

.sinsaturyou {
  clear: both;
  padding: 20px 0;
}

.sinsaturyou li {
  margin-left: 30px;
  list-style: disc;
}

.wave {
  width: 1000px;
  background: url(background:url("images/wave.png") bottom repeat-x;
  background-size: 500px;
}

span.hako {
  padding: 0px 2px;
  border: 1px solid;
  margin-bottom: 2px;
}

/*********************

*  0531top記事追記

*********************/
.box_0531 {
  margin: 0 auto 20px;
}

.box_0531.bd {
  border: 1px solid #000;
  width: 85%;
}

.box_0531 tr {
  vertical-align: top;
}

.box_0531 th,
.box_0531 td {
  padding: 5px 10px;
}

.box_0531.bd th {
  width: 30%;
}

/*--- 0531top記事追記 ---*/
.txt_cent {
  text-align: center !important;
}

.txt_cent img {
  float: none !important;
  margin-top: -8px;
}

.box_0809 {
  display: block;
  padding: 2% 0% 2% 22%;
  border: 1px solid #465c36;
  background: #fafaec;
  width: 90%;
  margin: 1%;
  /* margin-bottom: 1%; */
  font-size: 15px;
  /* text-align: center; */
}

a.link_0809 {
  font-size: 16px;
  font-weight: bold;
  margin: 0 2% 0 0;
  text-decoration: underline;
}

.point_1 {
  display: block;
  padding: 2%;
  border: 1px solid;
  margin: 1% 0;
  max-width: 800px;
}

.point_1.de1 {
  text-align: center;
  background: #f6f9f0;
  border: 1px solid #5b8819;
}

.point_1.de2 {
  text-align: center;
  background: #faf7ef;
  border: 1px solid #877719;
}

.point_1 span {
  font-weight: bold;
}

.point_1.de2 span {
  border: #795d46 1px solid;
  padding: 5px;
}

/* 20200407 追記 */
.form_cont {
  max-width: 856px;
  width: 100%;
  margin: 0 auto 20px;
  clear: both;
}

.form__before {
  margin-bottom: 10px;
}

.form__wrap {
  margin: 20px 0;
  padding: 20px 3% 30px;
  border: 1px solid #444;
}

.form__box {
  margin-top: 20px;
}

.form__heading {
  font-size: 18px;
  font-weight: bold;
}

.form__sub {
  font-size: 14px;
}

.form__ttl {
  margin-top: 15px;
  font-weight: bold;
}

.form__item {
  margin-bottom: 20px;
}

.form__item input {
  margin-top: -3px;
  margin-right: 5px;
  vertical-align: middle;
}

.form__item input[type="text"] {
  width: 300px;
  padding: 3px 5px;
  margin: 3px 18px;
  box-sizing: border-box;
}

.form__item input[type="text"].zip {
  width: 110px;
  margin-left: 3px;
}

.submit__btn {
  margin: -6px 0 0;
  padding: 0 3%;
}

.submit__btn input {
  display: block;
  padding: 2px 20px;
  font-size: 15px;
  color: #fff;
  background: #000;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  cursor: pointer;
}

.form__after {
  margin-top: 15px;
  font-size: 13px;
}

.top_news_list {
  counter-reset: number;
  margin: 8px 0;
}

.top_news_list_item {
  position: relative;
  padding-left: 1.1em;
  margin-bottom: 3px;
}

.top_news_list_item::before {
  counter-increment: number;
  content: counter(number) ".";
  position: absolute;
  left: 0;
  top: 0;
}

.top_news_list.child .top_news_list_item {
  padding-left: 1.3em;
}

.top_news_list.child .top_news_list_item::before {
  content: counter(number);
  display: flex;
  align-items: center;
  justify-content: center;
  top: 5px;
  width: 1em;
  height: 1em;
  font-size: 0.9em;
  border: 1px solid #000;
  border-radius: 50%;
}

.top_news_heading {
  font-weight: bold;
}

.top_art04_p .top_news_list .top_news_list_item::before {
  content: counter(number) "）";
}

.top_art04_p .top_news_list .top_news_list_item {
  padding-left: 1.6em;
}

.top_art04_p .top_news_list.child .top_news_list_item::before {
  content: "(" counter(number, katakana) ")";
  display: block;
  top: 0;
  width: auto;
  height: auto;
  border: none;
  border-radius: 0;
}

.top_art04_p .top_news_list.child .top_news_list_item {
  padding-left: 1.8em;
}

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 -32px !important;
}

.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: -43px -32px !important;
}

/* 20200427 追記 */
.under_line {
  padding: 20px 0;
  margin: 30px 0;
  clear: both;
  border-bottom: 1px dashed #b7b7b7;
}

.top_h4.c_change {
  color: #833c0b;
}

/* 20200528 追記 */
.touchu_news01_01 img.touchuimg01 {
  width: 82%;
  position: relative;
  left: calc(50% - 41%);
  float: none;
}

.touchu_news01_01 img.touchuimg02 {
  width: 100%;
  margin-top: 3%;
  margin-bottom: 3%;
  float: none;
}

.touchu_news01_01 img.touchuimg03 {
  width: 46%;
  position: relative;
  margin-top: 8px;
  margin-bottom: 3%;
  float: none;
}

.touchu_news01_01 h4.top_h4.new {
  border-bottom: 1px solid #c9d0bf;
  padding-bottom: 10px;
  margin-bottom: 10px;
  width: 100%;
  max-width: 856px;
  height: auto;
  /* float: left; */
  font-size: 18px;
  margin: 20px 0 10px 0px;
}

/* 20200821 追記 */
.wave__box {
  position: relative;
  float: left;
  padding: 40px 0 60px;
  margin: 50px 0;
}

.wave__box::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 20px;
  background: url(./images/wave.jpg) repeat-x;
  background-size: 13px;
  background-position: 0 0;
}

.wave__box::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 20px;
  background: url(./images/wave.jpg) repeat-x;
  background-size: 13px;
  background-position: 0 0;
}

.bx-wrapper {
  z-index: 0;
}

.mainMenu {
  position: relative;
  z-index: 999;
}

/* 20210106 追記 */
input {
  display: unset;
}

label {
  display: flex;
  width: 100%;
  cursor: pointer;
  user-select: none;
  margin: 0 auto;
}

label div:first-child {
  width: 100%;
  line-height: 45px;
  margin-left: 10px;
  font-size: 1.2em;
}

.cross {
  margin-right: 15px;
  margin-top: 3px;
  position: absolute;
  right: 0px;
  bottom: 17px;
  cursor: pointer;
}

.cross:before,
.cross:after {
  content: "";
  border-top: 2px solid #81bb44;
  width: 15px;
  display: block;
  margin-top: 18px;
  transition: 0.3s;
}

.cross:after {
  transform: rotate(90deg);
  margin-top: -2px;
}

.content {
  box-sizing: border-box;
  font-size: 0.9em;
  margin: 10px 10px;
  max-height: 0;
  overflow: hidden;
  transition: max-height, 0.5s;
}

input:checked ~ .content {
  max-height: 100%;
  transition: max-height, 1s;
}

input:checked ~ label .cross:before {
  transform: rotate(180deg);
}

input:checked ~ label .cross:after {
  transform: rotate(0deg);
}

.questions {
  margin-top: 20px;
  max-height: 0;
  overflow: hidden;
  transition: max-height, 0.5s;
}

.questions label {
  border: none;
  box-shadow: none;
  margin: 0;
}

input:checked ~ .questions {
  max-height: 400px;
  border-bottom: 2px solid #3e474f;
  transition: 1s;
}

/*----------tool-tip------------*/

.tip {
  color: #f03768;
  cursor: help;
  position: relative;
  overflow: visible;
  font-family: monospace;
  font-size: 1.3em;
}

.tip:before,
.tip:after {
  position: absolute;
  opacity: 0;
  z-index: -100;
  transform: translateY(-30%);
  transition: 0.4s;
}

.tip:before {
  content: "";
  border-style: solid;
  border-width: 0.8em 0.5em 0 0.5em;
  border-color: #3e474f transparent transparent transparent;
  transform: translateY(-200%);
  bottom: 90%;
  left: 50%;
}

.tip:after {
  content: attr(data-tip);
  background: #3e474f;
  color: white;
  width: 150px;
  padding: 10px;
  font-size: 0.8em;
  bottom: 150%;
  left: -50%;
}

.tip:hover:before,
.tip:hover:after {
  opacity: 1;
  z-index: 100;
  transform: scaleY(1);
}

.icon {
}

.icon_all {
  margin: 1rem 0 1rem;
  max-width: 100%;
}

.icon_01 {
  width: 15%;
  height: auto;
  display: table-cell;
  text-align: center;
  font-weight: 600;
  margin: 0 auto;
  max-width: 100%;
}
.icon_img {
  width: 60%;
  margin: 0 auto;
}

.map_footer {
  margin-top: 30px;
  float: right;
  width: 45%;
  /* max-width: 500px; */
  height: 450px;
  position: relative;
  overflow: hidden;
}

.footer_info {
  width: 90%;
  margin-left: 3rem;
  margin-top: 5rem;
}

.footer_word {
  float: left;
  width: 550px;
  position: relative;
  max-width: 50%;
}

.tel {
  float: left;
  position: relative;
  font-size: 20px;
  font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-left: 3rem;
  color: #fff;
}

.access {
  width: 100px;
  height: 100px;
  position: absolute;
  top: 0px;
  right: 0px;
  text-align: center;
  font-size: 14px;
  letter-spacing: 0em;
  line-height: 1.5em;
  background-color: #fff;
  color: #a2ab94;
  border: 3px solid #a2ab94;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  padding-top: 28px;
  box-sizing: border-box;
  margin-top: 1rem;
}

.access span {
  font-size: 22px;
  margin-left: 3px;
  margin-right: 3px;
  color: #6cb100;
  font-weight: 600;
}

.page_icon {
  background: url(./images/nextpage.png) no-repeat;
  background-size: 10%;
  background-position-x: left;
  background-position-y: center;
  margin-left: 5px;
}

.label {
  border: 2px solid #81bb44;
  border-radius: 15px;
  background-color: #fff;
}

.label_pdf {
  border: 2px solid #81bb44;
  border-radius: 15px;
  background-color: #fff;
}

.label_boder1 {
  border: 2px solid #81bb44;
}

.label_boder2 {
  border: 2px solid #81bb44;
}

.label_boder3 {
  border: 2px solid #81bb44;
}

.slide {
  position: relative;
  width: 100%;
  height: 30vw;
  overflow: hidden;
}
.slide img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  opacity: 0;
}
@keyframes thumb1 {
  0% {
    filter: grayscale(100%);
  }
  6% {
    filter: grayscale(0%);
  }
  10% {
    filter: grayscale(0%);
  }
  28% {
    filter: grayscale(0%);
  }
  37% {
    filter: grayscale(100%);
  }
  100% {
    filter: grayscale(100%);
  }
}
@keyframes thumb2 {
  0% {
    filter: grayscale(100%);
  }
  6% {
    filter: grayscale(0%);
  }
  10% {
    filter: grayscale(0%);
  }
  28% {
    filter: grayscale(0%);
  }
  37% {
    filter: grayscale(100%);
  }
  100% {
    filter: grayscale(100%);
  }
}
@keyframes thumb3 {
  0% {
    filter: grayscale(100%);
  }
  6% {
    filter: grayscale(0%);
  }
  10% {
    filter: grayscale(0%);
  }
  28% {
    filter: grayscale(0%);
  }
  37% {
    filter: grayscale(100%);
  }
  100% {
    filter: grayscale(100%);
  }
}
@keyframes slideshow1 {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  28% {
    opacity: 1;
  }
  38% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

@keyframes slideshow2 {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 1;
  }
  28% {
    opacity: 1;
  }
  38% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes slideshow3 {
  0% {
    opacity: 0;
  }

  10% {
    opacity: 1;
  }

  28% {
    opacity: 1;
  }

  38% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}
.thumbnail {
  list-style: none;
  display: flex;
  padding: 0;
  margin: 30px 0 30px;
  justify-content: center;
}
.bt {
  display: none !important;
}
input[type="radio"] {
  display: unset;
}
.thumbnail img {
  display: block;
  /* width: 200px; */
  height: 8.4vw;
  object-fit: cover;
  margin: 10px;
  cursor: pointer;
}
/*ページを開いたとき＆一つ目のサムネイルをクリックしたとき*/
#img1:checked ~ .thumbnail label[for="img1"] img {
  animation: thumb1 24s linear infinite both;
  animation-delay: 0s;
  cursor: auto;
}
#img1:checked ~ .thumbnail label[for="img2"] img {
  animation: thumb1 24s linear infinite both;
  animation-delay: 8s;
}
#img1:checked ~ .thumbnail label[for="img3"] img {
  animation: thumb1 24s linear infinite both;
  animation-delay: 16s;
}
#img1:checked ~ .slide img {
  animation: slideshow1 24s linear infinite;
}
#img1:checked ~ .slide img:nth-child(1) {
  animation-delay: 0s;
}
#img1:checked ~ .slide img:nth-child(2) {
  animation-delay: 8s;
}
#img1:checked ~ .slide img:nth-child(3) {
  animation-delay: 16s;
}

/*二つ目のサムネイルをクリックしたとき*/
#img2:checked ~ .thumbnail label[for="img1"] img {
  animation: thumb2 24s linear infinite both;
  animation-delay: 16s;
}
#img2:checked ~ .thumbnail label[for="img2"] img {
  animation: thumb2 24s linear infinite both;
  animation-delay: 0s;
  cursor: auto;
}
#img2:checked ~ .thumbnail label[for="img3"] img {
  animation: thumb2 24s linear infinite both;
  animation-delay: 8s;
}
#img2:checked ~ .slide img {
  animation: slideshow2 24s linear infinite;
}
#img2:checked ~ .slide img:nth-child(1) {
  animation-delay: 16s;
}
#img2:checked ~ .slide img:nth-child(2) {
  animation-delay: 0s;
}
#img2:checked ~ .slide img:nth-child(3) {
  animation-delay: 8s;
}

/*二つ目のサムネイルをクリックしたとき*/
#img3:checked ~ .thumbnail label[for="img1"] img {
  animation: thumb3 24s linear infinite both;
  animation-delay: 8s;
}
#img3:checked ~ .thumbnail label[for="img2"] img {
  animation: thumb3 24s linear infinite both;
  animation-delay: 16s;
}
#img3:checked ~ .thumbnail label[for="img3"] img {
  animation: thumb3 24s linear infinite both;
  animation-delay: 0s;
  cursor: auto;
}
#img3:checked ~ .slide img {
  animation: slideshow3 24s linear infinite;
  animation-delay: 8s;
}
#img3:checked ~ .slide img:nth-child(1) {
  animation-delay: 8s;
}
#img3:checked ~ .slide img:nth-child(2) {
  animation-delay: 16s;
}
#img3:checked ~ .slide img:nth-child(3) {
  animation-delay: 0s;
}

@keyframes label1 {
  0% {
    filter: grayscale(100%);
  }
  6% {
    filter: grayscale(0%);
  }
  10% {
    filter: grayscale(0%);
  }
  28% {
    filter: grayscale(0%);
  }
  37% {
    filter: grayscale(100%);
  }
  100% {
    filter: grayscale(100%);
  }
}
@keyframes label2 {
  0% {
    filter: grayscale(100%);
  }
  6% {
    filter: grayscale(0%);
  }
  10% {
    filter: grayscale(0%);
  }
  28% {
    filter: grayscale(0%);
  }
  37% {
    filter: grayscale(100%);
  }
  100% {
    filter: grayscale(100%);
  }
}
@keyframes label3 {
  0% {
    filter: grayscale(100%);
  }
  6% {
    filter: grayscale(0%);
  }
  10% {
    filter: grayscale(0%);
  }
  28% {
    filter: grayscale(0%);
  }
  37% {
    filter: grayscale(100%);
  }
  100% {
    filter: grayscale(100%);
  }
}

#img1:checked ~ .thumbnail label[class="label_boder1"] {
  animation: label1 24s linear infinite both;
  animation-delay: 0s;
  cursor: auto;
}
#img1:checked ~ .thumbnail label[class="label_boder2"] {
  animation: label1 24s linear infinite both;
  animation-delay: 8s;
}
#img1:checked ~ .thumbnail label[class="label_boder3"] {
  animation: label1 24s linear infinite both;
  animation-delay: 16s;
}

#img2:checked ~ .thumbnail label[class="label_boder1"] {
  animation: label2 24s linear infinite both;
  animation-delay: 16s;
}
#img2:checked ~ .thumbnail label[class="label_boder2"] {
  animation: label2 24s linear infinite both;
  animation-delay: 0s;
  cursor: auto;
}
#img2:checked ~ .thumbnail label[class="label_boder3"] {
  animation: label2 24s linear infinite both;
  animation-delay: 8s;
}

#img3:checked ~ .thumbnail label[class="label_boder1"] {
  animation: label3 24s linear infinite both;
  animation-delay: 8s;
}
#img3:checked ~ .thumbnail label[class="label_boder2"] {
  animation: label3 24s linear infinite both;
  animation-delay: 16s;
}
#img3:checked ~ .thumbnail label[class="label_boder3"] {
  animation: label3 24s linear infinite both;
  animation-delay: 0s;
  cursor: auto;
}

.toggle_btn {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  display: block;
  width: 24px;
  height: 24px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border-radius: 50%;
}
.toggle_btn:before,
.toggle_btn:after {
  display: block;
  content: "";
  background-color: #fff;
  /* border: 1px solid #81bb44; */
  position: absolute;
  width: 15px;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.toggle_btn:before {
  width: 2px;
  height: 15px;
}

.label.selected .toggle_btn:before {
  content: normal;
}

.toggle_png {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  display: block;
  width: 24px;
  height: 24px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border-radius: 50%;
}

.toggle_png:before,
.toggle_png:after {
  display: block;
  content: "";
  background-color: #81bb44;
  /* border: 1px solid #81bb44; */
  position: absolute;
  width: 15px;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.toggle_png:before {
  width: 2px;
  height: 15px;
}

.toggle_pdf {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  display: block;
  width: 24px;
  height: 24px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border-radius: 10%;
}

.toggle_pdf:before {
  display: block;
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  top: 65%;
  left: 0%;
  transform: translate(0%, -40%);
  background: url(./images/nextpage.png) no-repeat;
  background-size: 60%;
}

.flexcenter {
  display: inline-flex;
  justify-content: center;
  flex-wrap: wrap;
}

.mb60 {
  margin-bottom: 60px !important;
  margin-top: 50px;
}

.pd40 {
  padding: 40px;
}

.shadow {
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  position: relative;
}

.c2 {
  width: 47.5%;
  margin: 1%;
}

.inview {
  transition: 0.8s;
}
.inview {
  opacity: 0;
  transform: translate(0, 60px);
  -webkit-transform: translate(0, 60px);
}
.inview-on {
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}

.pd40_ {
  padding: 40px;
}

.shadow_ {
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  position: relative;
}

.c2_ {
  width: 47.5%;
  margin: 1%;
}

.inview_ {
  transition: 0.8s;
}
.inview_ {
  opacity: 0;
  transform: translate(0, 60px);
  -webkit-transform: translate(0, 60px);
}
.inview-on_ {
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}

.marker {
  background: linear-gradient(transparent 55%, rgb(129 187 68 / 47%) 0%);
}

#text-wrap {
  /* width: 50%; */
  /* height: 100%; */
  display: block;
  margin: 0 auto;
  /* padding: 70px; */
}

.hide-text {
  display: none;
}

button.readmore {
  position: relative;
  height: 80px;
  width: 90px;
  margin: 30px auto;
  display: block;
  background-color: transparent;
  color: #666;
  padding-bottom: 40px;
  border: none;
  outline: 0;
  transition: 0.5s;
  -erbkit-transition: 0.5s;
}

button.readmore::after {
  content: " ";
  position: absolute;
  width: 30px;
  height: 30px;
  border-top: solid 3px #666;
  border-right: solid 3px #666;
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  right: 28px;
  top: 25px;
  transition: 0.5s;
  -erbkit-transition: 0.5s;
}

button.readmore:hover::after {
  top: 40px;
}

.on-click {
  color: transparent !important;
}

.on-click {
  transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
}

/* ------------------------------
* 2021 1222 追記
------------------------------ */
.header_p {
  text-align: center;
  font-size: 20px;
  color: #666;
  /* margin: 2%; */
  font-weight: 600;
}
.top_flexbox {
  display: flex;
  justify-content: center;
  margin: 2%;
}

.top_box {
  width: 40%;
}

.top_box_text {
  font-size: 16px;
  padding-top: 2%;
  font-weight: 600;
}

.top_movieflex {
  display: flex;
}

.top-link::after {
  content: "";
  position: absolute;
  width: 18vw;
  height: 25.5vw;
  top: 3.2vw;
  right: 2vw;
  display: block;
  cursor: pointer;
  z-index: 1;
}

/* ------------------------------
* 2022.02.07　　swiper
------------------------------ */
/* 全体のスタイル */
.swiper-wrapper {
  width: 100%;
  height: 250px;
}
/* 全スライド共通スタイル */
.swiper-slide {
  color: #ffffff;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 250px;
}

.swiper2 {
  height: auto;
  width: 90%;
  margin: 30px auto;
  margin-top: 3% !important;
}
.swiper2 .swiper-slide {
  -webkit-filter: brightness(0.5);
  filter: brightness(0.5);
  border: 2px solid #81bb44;
  padding: 1%;
}

.swiper2 .swiper-slide-thumb-active {
  -webkit-filter: brightness(1);
  filter: brightness(1);
}

.top-right {
  text-align: right;
  margin: 0 auto;
}

.top-flex-01 {
  display: flex;
}

.top-box01 {
  margin-top: 40px;
  width: 50%;
}

.top-box02 {
  margin-top: 40px;
  width: 50%;
}

/* ------------------------------
* 2022.04.01　　
------------------------------ */
/* sp */
.sp_block {
  display: none;
}
.sp_none {
  display: block;
}

/* topIntro */
.topIntro-img {
  display: block;
  width: 80%;
  margin: 0 auto 10px;
}

.topIntro-img:last-child {
  margin-bottom: 0;
}

/* ------------------------------
* 2022.09.21　　
------------------------------ */
.top-content {
  max-width: 1200px;
  width: 90%;
  margin: 135px auto 0;
  overflow: visible;
}

.top-problem {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.top-problem-title {
  display: inline-block;
  text-align: center;
  margin: 0 auto 40px;
  font-size: 30px;
  font-weight: 400;
  color: #666666;
  background: linear-gradient(transparent 60%, #c3f498 60%, #c3f498 80%, transparent 80%);
}

.top-problem-block {
  margin-bottom: 160px;
  padding: 80px 50px 45px;
  border-radius: 20px;
  background: #fff;
  filter: drop-shadow(7px 7px 10px rgb(0, 0, 0, 0.2));
}
.top-problem-block::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -43px;
  border: 43px solid transparent;
  border-top: 53px solid #ffffff;
}

.top-problem-list {
  display: flex;
  justify-content: space-between;
}
.top-problem-item {
  max-width: 200px;
  width: calc(100% / 4 - 20px);
  font-size: 18px;
  font-weight: 600;
  text-align: center;
}

.top-problem-item._01 {
  color: #adc966;
}
.top-problem-item._02 {
  color: #89d5c9;
}
.top-problem-item._03 {
  color: #fac172;
}
.top-problem-item._04 {
  color: #ff8357;
}

.top-problem-item p {
  line-height: 1.4;
  margin-top: 25px;
}

.top-problem-box {
  max-width: 800px;
  width: 90%;
  margin: 0 auto 80px;
}

.top-problem-lead {
  position: relative;
  text-align: center;
  font-size: 20px;
  line-height: 2.25;
  letter-spacing: 0.1em;
  color: #666;
  margin-bottom: 40px;
  padding: 0 130px;
}
.top-problem-lead ._large {
  font-weight: 600;
  font-size: 25px;
  color: #88bb36;
}

.top-problem-box_icon {
  position: absolute;
}
.top-problem-box_icon._icon-01 {
  display: block;
  width: 77.4px;
  top: -32px;
  left: 5%;
}
.top-problem-box_icon._icon-02 {
  display: block;
  width: 86.1px;
  top: -31px;
  right: 5%;
}

.top-problem-text {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.1em;
  color: #666;
  line-height: 2.25;
}
.top-problem-text .marker {
  font-weight: 600;
}
.top-problem-text ._large {
  font-size: 25px;
  font-weight: 600;
}
.top-problem-text ._color01 {
  color: #adc966;
}
.top-problem-text ._color02 {
  color: #89d5c9;
}
.top-problem-text ._color03 {
  color: #ff8357;
}

.top-feature {
  position: relative;
  clear: both;
  margin: 0 auto 100px;
  padding-top: 30px;
}
.top-feature-heading {
  font-size: 25px;
  color: #666;
  text-align: center;
  margin-bottom: 20px;
}
.top-feature-list {
  display: flex;
  justify-content: space-between;
  clear: both;
}
.top-feature-item {
  position: relative;
  max-width: 360px;
  width: 32%;
  transition: filter 0.3s ease;
}
.top-feature-item:hover {
  filter: brightness(1.1);
}
.top-feature-title {
  font-size: 18px;
  color: #88bb36;
  text-align: center;
  margin: 30px 0 20px;
}
.top-feature-text {
  font-size: 16px;
  margin-bottom: 50px;
}
.top-feature-btn {
  display: flex;
  justify-content: flex-end;
}
.top-feature-btn a {
  display: inline-block;
  color: #666;
  font-size: 16px;
  transition: color 0.3s ease;
}
.top-feature-item:hover .top-feature-btn a {
  color: #88bb36;
}
.top-feature-btn a::before {
  content: "";
  background: #88bb36;
  display: inline-block;
  width: 50px;
  height: 1px;
  align-items: center;
  margin-bottom: 0.4em;
  margin-right: 10px;
  transition: margin 0.3s ease;
}
.top-feature-item:hover .top-feature-btn a::before {
  margin-right: 15px;
}
.top-feature-btn a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* がん対策と抗がん剤副作用の緩和療法 */
.medical-table {
  background: #fff;
  max-width: 800px;
  width: 90%;
  margin: 0 auto 20px;
  border: 2px solid #666;
}

.medical-table th {
  font-size: 18px;
  font-weight: 600;
  color: #88bb36;
  padding: 10px 20px 7px;
  line-height: 1.2;
  border: 1px solid #999;
}

.medical-table td {
  font-size: 16px;
  font-weight: 600;
  color: #666;
  text-align: center;
  padding: 15px 20px;
  border: 1px solid #999;
}

.medical-table_bottomBd {
  border-bottom: 2px solid #666;
}

.medical-table_rightBd {
  border-right: 1px solid #999;
}

/* ------------------------------
* 2023.09.05 追記
------------------------------ */
.citizen_heading {
  display: block;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  color: #88bb36;
  margin-bottom: 10px;
}

.citizen_heading-line {
  position: relative;
  padding-left: 15px;
}
.citizen_heading-line::before {
  content: "─";
  position: absolute;
  left: 0;
}

.citizen_block + .citizen_block {
  margin-top: 30px;
}

.citizen_text {
  font-size: 14px;
  line-height: 1.8;
}

.citizen_text + .citizen_text {
  margin-top: 10px;
}

.citizen_text-bold {
  font-weight: 600;
}

.citizen_text-em {
  color: #e14e1a;
}

.citizen_image {
  width: 100px;
  margin: 10px 0;
}
.citizen_image img {
  width: 100%;
  height: auto;
}
