/*
Theme Name:original
Author:SolabotSchool
Version:1.00
*/


@charset "utf-8";

/*================================

リセット

=================================*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

/*font*/
/*フォント*/
@font-face {
	font-family: "ZenMaruGothic-Light";
	src: url("/wp-content/themes/original/fonts/ZenMaruGothic-Light.ttf") format("truetype");
	font-display: block;
}
@font-face {
	font-family: "ZenMaruGothic-Regular";
	src: url("/wp-content/themes/original/fonts/ZenMaruGothic-Regular.ttf") format("truetype");
	font-display: block;
}
@font-face {
	font-family: "ZenMaruGothic-Medium";
	src: url("/wp-content/themes/original/fonts/ZenMaruGothic-Medium.ttf") format("truetype");
	font-display: block;
}
@font-face {
	font-family: "ZenMaruGothic-Bold";
	src: url("/wp-content/themes/original/fonts/ZenMaruGothic-Bold.ttf") format("truetype");
	font-display: block;
}
@font-face {
	font-family: "ZenMaruGothic-Black";
	src: url("/wp-content/themes/original/fonts/ZenMaruGothic-Black.ttf") format("truetype");
	font-display: block;
}

div,a,p,span {
	font-family: "ZenMaruGothic-Medium";
}
h1,h2,h3,h4,h5 {
	font-family: "ZenMaruGothic-Bold";
}

/*================================

ウェブアイコン

=================================*/
@font-face {
  font-family: 'icomoon';
  src: url('../fonts/icomoon.eot?1a95rz');
  src: url('../fonts/icomoon.eot?1a95rz#iefix') format('embedded-opentype'), url('../fonts/icomoon.ttf?1a95rz') format('truetype'), url('../fonts/icomoon.woff?1a95rz') format('woff'), url('../fonts/icomoon.svg?1a95rz#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"],
[class*=" icon-"] {
  font-family: "Font Awesome 5 Free"; /* バージョンとFreeを指定 */
}

.icon-freedial:before {
  content: "\e900";
  /***** フリーダイヤル *****/
}

.icon-mail:before {
  content: "\f0e0";
  /***** メール *****/
  color: #fefefe;
  font-weight: 900;
}

.icon-menu:before {
  content: "\f46d";
  font-weight: 900;
  /***** メニュー *****/
}

.icon-tooth:before {
  content: "\e904";
  /***** 歯 *****/
}

.icon-shinytooth:before {
  content: "\e905";
  /***** 輝く歯 *****/
}

.icon-clinic:before {
  content: "\e906";
  /***** クリニック *****/
}

.icon-plus:before {
  content: "\f067";
  /***** プラス *****/
}

.icon-home:before {
  content: "\f015";
  /***** ホーム *****/
}

.icon-comment:before {
  content: "\f075";
  font-weight: 900;
  /***** コメント *****/
  color: #4269a7;
}

.icon-comments:before {
  content: "\f086";
  /***** コメント複数 *****/
}

.icon-phone:before {
  content: "\f098";
  /***** 自宅電話 *****/
  color: #fefefe;
  font-weight: 900;
}

.icon-navicon:before {
  content: "\f0c9";
  /***** スマホナビコン *****/
  color: #fefefe;
  font-weight: 900;
}

.icon-smile:before {
  content: "\f118";
  /***** 表情にっこり *****/
}

.icon-frown:before {
  content: "\f119";
  /***** 表情げっそり *****/
}

.icon-assignment:before {
  content: "\e85d";
  /***** 箇条メモ *****/
}

.icon-checkmark:before {
  content: "\e52d";
  /***** フラッグチェックマーク *****/
}

.icon-checkbox:before {
  content: "\e834";
  /***** 四角チェックボックス *****/
}

.icon-bike:before {
  content: "\e52f";
  /***** 自転車 *****/
}

.icon-bus:before {
  content: "\e530";
  /***** バス *****/
}

.icon-car:before {
  content: "\e531";
  /***** 車 *****/
}

.icon-railway:before {
  content: "\e534";
  /***** 電車 *****/
}

.icon-walk:before {
  content: "\e536";
  /***** 徒歩 *****/
}

.icon-parking:before {
  content: "\f288";
  /***** パーキング *****/
}

.icon-access:before {
  content: "\f3c5";
  /***** アクセス *****/
  color: #fefefe;
  font-weight: 900;
  font-size: 90%;
}

.icon-smartphone:before {
  content: "\e0dd";
  /***** スマホ *****/
}

/*================================

ベース

=================================*/
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  /***** 常に自動調整時の倍率を1倍 *****/
}

body {
  font-size: 1.5em;
  /***** 15px *****/
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", monospace, sans-serif;
  line-height: 1.5;
  font-feature-settings: "palt";
  color: #555;
  background: #f5f4f0;
  margin: 0;
  padding: 0;
  overflow-wrap: break-word;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

input,
select {
  vertical-align: middle;
}

/*================================

見出し

=================================*/
/*游ゴシック*/
h1,
h2,
h3,
h4,
.entry-title,
.post .entry-title {
  /* font-family: Helvetica, "游ゴシック", "Yu Gothic", sans-serif; */
  line-height: 1.3;
  padding: .2rem 0;
}

h1,
.entry-title,
.post .entry-title {
  font-size: 1.9rem;
}

h2 {
  font-size: 1.6rem;
}

h3 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1.5rem;
}

/*================================

テキスト

=================================*/
p {
  padding: 0;
  margin: 0 0 1.8rem 0;
}

.txt10 {
  font-size: 1rem;
  /***** 10px *****/
}

.txt12 {
  font-size: 1.2rem;
  /***** 12px *****/
}

.txt14 {
  font-size: 1.4rem;
  /***** 14px *****/
}

.txt18 {
  font-size: 1.8rem;
  /***** 18px *****/
  line-height: 1.5;
}

.txt20 {
  font-size: 2rem;
  /***** 20px *****/
  line-height: 1.4;
}

.txt24 {
  font-size: 2.4rem;
  /***** 24px *****/
  line-height: 1.4;
}

.txt28 {
  font-size: 2.8rem;
  /***** 28px *****/
  line-height: 1.3;
}

.txtBold {
  font-weight: bold;
  /***** 太字 *****/
}

.txtUnd {
  text-decoration: underline;
  /***** 下線 *****/
}

.txtWht {
  color: #fefefe;
  /***** 白 *****/
}

.txtRed {
  color: #f44;
  /***** 赤 *****/
}

.txtMcolor {
  color: #4269a7;
  /***** サイトのメインカラー *****/
}

.txtAcolor {
  color: #fc9d29;
  /***** サイトのアクセントカラー *****/
}

.txtMarker {
  background-color: #ff9;
  /***** 黄マーカー *****/
}

.tag {
  background-color: #4269a7;
  /***** カラー背景＋テキスト白 *****/
  border-radius: 4px;
  padding: .4rem 0 .4rem .6rem;
  margin-bottom: .6em;
  line-height: 0;
  color: #fefefe;
}

.del {
  text-decoration: line-through;
  /***** 取り消し線 *****/
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  /***** 水平線 *****/
  margin: 1em 0;
  padding: 0;
}

/*================================

リンク

=================================*/
a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  outline: none;
}

a:link {
  color: #4269a7;
  text-decoration: underline;
}

a:visited {
  color: #4269a7;
  text-decoration: underline;
}

a:hover {
  color: #fc9d29;
  text-decoration: none;
}

/***** ポイント用リンク *****/
a.linkPoint {
  font-size: 1.5rem;
  position: relative;
  display: inline-block;
  padding: 0 32px 0 16px;
  color: #fefefe;
  text-decoration: none;
  height: 26px;
  line-height: 26px;
  border-radius: 12px;
  background: #0AD5A2;
}

a.linkPoint:before,
a.linkPoint:after {
  content: "";
  display: block;
  position: absolute;
}

a.linkPoint:before {
  width: 16px;
  height: 16px;
  background: #fefefe;
  border-radius: 50%;
  right: 4px;
  top: 4px;
}

a.linkPoint:after {
  width: 4px;
  height: 4px;
  border-right: 2px solid #0AD5A2;
  border-top: 2px solid #0AD5A2;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 10px;
  top: 9px;
}

/*================================

イメージ

=================================*/
img {
  margin: 0;
  padding: 0;
  max-width: 100%;
  height: auto;
  border: none;
  vertical-align: bottom;
}

.photo {
  background-color: #fbfbfb;
  padding: 4px;
  border: 1px #ccc solid;
}

/*================================

配置

=================================*/

.center {
  margin: 0 auto;
}

.txtC {
  text-align: center;
}

.txtL {
  text-align: left;
}

.txtR {
  text-align: right;
}

img.center {
  display: block;
  margin: 0 auto;
}

/*================================

スペース

=================================*/
/***** 全スペースなし *****/
.none {
  margin: 0;
  padding: 0;
}

/***** マージントップ *****/
.mTopS {
  margin-top: 1rem;
}

.mTopM {
  margin-top: 2rem;
}

.mTopL {
  margin-top: 3rem;
}

/***** マージンボトム *****/
.mBtmS {
  margin-bottom: 1rem;
}

.mBtmM {
  margin-bottom: 2rem;
}

.mBtmL {
  margin-bottom: 3rem;
}

/***** マージンレフト *****/
.mLftS {
  margin-left: 1rem;
}

.mLftM {
  margin-left: 2rem;
}

.mLftL {
  margin-left: 3rem;
}

/***** マージンライト *****/
.mRgtS {
  margin-left: 1rem;
}

.mRgtM {
  margin-left: 2rem;
}

.mRgtL {
  margin-left: 3rem;
}

/***** パディングトップ *****/
.pTopS {
  padding-top: 1rem;
}

.pTopM {
  padding-top: 2rem;
}

.pTopL {
  padding-top: 3rem;
}

/***** パディングボトム *****/
.pBtmS {
  padding-bottom: 1rem;
}

.pBtmM {
  padding-bottom: 2rem;
}

.pBtmL {
  padding-bottom: 3rem;
}

/***** パディングレフト *****/
.pLftS {
  padding-left: 1rem;
}

.pLftM {
  padding-left: 2rem;
}

.pLftL {
  padding-left: 3rem;
}

/***** パディングライト *****/
.pRgtS {
  padding-right: 1rem;
}

.pRgtM {
  padding-right: 2rem;
}

.pRgtL {
  padding-right: 3rem;
}

/*================================

ボックス

=================================*/
/***** 角丸シンプル *****/
.box01 {
  padding: 0.5em 1em;
  background: #fefefe;
  border: 2px solid #ddd;
  border-radius: 12px;
}

.box01 p:last-child {
  margin-bottom: 0;
}

/*================================

テーブル

=================================*/
.tbl01 {
  border-collapse: collapse;
  width: 100%;
}

.tbl01 th {
  background: #eee;
  border: 1px #ccc solid;
  padding: 10px;
  text-align: left;
}

.tbl01 th.img {
  text-align: center;
}

.tbl01 td {
  background: #fefefe;
  border: 1px #ccc solid;
  padding: 10px;
}

.tbl01 th,
.tbl01 td {
  border-bottom: none;
  display: block;
  width: 100%;
  vertical-align: top;
}

.tbl01 p:last-child {
  margin-bottom: 0;
}

.last td:last-child {
  border-bottom: 1px #ccc solid;
  width: 100%;
}

/*================================

リスト

=================================*/
/***** サークル *****/
.list-circ {
  list-style-type: none;
  line-height: 1.4;
}

.list-circ li {
  position: relative;
  padding: 0 .5em .6em 1.4em;
  margin: .6em 0 .6em 0;
}

.list-circ li:before {
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 12px;
  height: 12px;
  background: #6fc8db;
  border-radius: 50%;
  top: 37%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

/***** チェック *****/
.list-check {
  list-style-type: none;
  line-height: 1.4;
}

.list-check li {
  position: relative;
  padding: 0 .3em .3em 1.4em;
  margin: .6em 0 .6em 0;
}

.list-check li:after,
.list-check li:before {
  position: absolute;
  content: '';
  display: block;
  background: #fc9d29;
  top: .38em;
  left: .44em;
  height: 12px;
  width: .2em;
  transform: rotate(45deg);
}

.list-check li:before {
  top: .58em;
  left: 0;
  height: 8px;
  transform: rotate(-45deg);
}

/***** ゲッソリ *****/
.list-cry {
  list-style-type: none;
  line-height: 1.4;
}

.list-cry li {
  position: relative;
  padding: 0 .3em .3em 1.4em;
  margin: .6em 0 .6em 0;
}

.list-cry li:before {
  content: "\f119";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #999;
  position: absolute;
  left: 0;
  top: 0;
}

/***** ニッコリ *****/
.list-smile {
  list-style-type: none;
  line-height: 1.4;
}

.list-smile li {
  position: relative;
  padding: 0 .3em .3em 1.4em;
  margin: .6em 0 .6em 0;
}

.list-smile li:before {
  content: "\f118";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fc9d29;
  position: absolute;
  left: 0;
  top: 0;
}

/***** 歯 *****/
.list-tooth {
  list-style-type: none;
  line-height: 1.4;
}

.list-tooth li {
  position: relative;
  padding: 0 .3em .3em 1.4em;
  margin: .6em 0 .6em 0;
}

.list-tooth li:before {
  content: "\f5c9";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #6fc8db;
  position: absolute;
  left: 0;
  top: 0;
}

/***** 全リスト共通下線 *****/
.listLine li {
  border-bottom: dashed 1px #ccc;
}

/*================================

フロート

=================================*/
.fl {
  float: left;
}

.fr {
  float: right;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

/*================================

iframeのレスポンシブ

=================================*/
.iframeWrap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.iframeWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*================================

レスポンシブグリッドシステム

12 COLUMN : RESPONSIVE GRID SYSTEM
DEVELOPER : DENIS LEBLANC
URL : http://responsive.gs
VERSION : 3.0
LICENSE : GPL & MIT
SET ALL ELEMENTS TO BOX-SIZING : BORDER-BOX

=================================*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  *behavior: url(/scripts/boxsizing.htc);
}

.container {
  max-width: 960px;
  margin: 0 .5em;
}

/***** SELF CLEARING FLOATS - CLEARFIX METHOD *****/
.container:after,
.row:after,
.col:after,
.clr:after,
.group:after {
  content: "";
  display: table;
  clear: both;
}

/***** DEFAULT ROW STYLES 
	Set bottom padding according to preference *****/
.row {
  padding-bottom: 0em;
}

/***** DEFAULT COLUMN STYLES *****/
.col {
  display: block;
  float: left;
  width: 100%;
}

@media (min-width : 768px) {
  .gutters .col {
    margin-left: 2%;
  }

  .gutters .col:first-child {
    margin-left: 0;
  }
}

/***** COLUMN WIDTH ON DISPLAYS +768px *****/
@media (min-width : 768px) {
  .span_1 {
    width: 8.33333333333%;
  }

  .span_2 {
    width: 16.6666666667%;
  }

  .span_3 {
    width: 25%;
  }

  .span_4 {
    width: 33.3333333333%;
  }

  .span_5 {
    width: 41.6666666667%;
  }

  .span_6 {
    width: 50%;
  }

  .span_7 {
    width: 58.3333333333%;
  }

  .span_8 {
    width: 66.6666666667%;
  }

  .span_9 {
    width: 75%;
  }

  .span_10 {
    width: 83.3333333333%;
  }

  .span_11 {
    width: 91.6666666667%;
  }

  .span_12 {
    width: 100%;
  }

  .gutters .span_1 {
    width: 6.5%;
  }

  .gutters .span_2 {
    width: 15.0%;
  }

  .gutters .span_3 {
    width: 23.5%;
  }

  .gutters .span_4 {
    width: 32.0%;
  }

  .gutters .span_5 {
    width: 40.5%;
  }

  .gutters .span_6 {
    width: 49.0%;
  }

  .gutters .span_7 {
    width: 57.5%;
  }

  .gutters .span_8 {
    width: 66.0%;
  }

  .gutters .span_9 {
    width: 74.5%;
  }

  .gutters .span_10 {
    width: 83.0%;
  }

  .gutters .span_11 {
    width: 91.5%;
  }

  .gutters .span_12 {
    width: 100%;
  }
}

@media screen and (min-width : 768px) {

  /*//////////// ７６８ｐｘ以上からのデザイン ///////////////////////////////////////////////////////////////////////////*/
  body {
    background: url(../img/common/pc_bg.png) repeat;
    font-size: 1.7rem;
    /***** 17px *****/
    line-height: 1.7;
  }

  /***** タブレットとPCで非表示 *****/
  .pcnone {
    display: none;
  }

  /*================================

テキスト

=================================*/
  p {
    padding: 0;
    margin: 0 0 2rem 0;
  }

  .tag {
    border-radius: 12px;
    padding: 1rem 0 1rem 1.4rem;
    margin-bottom: 1em;
  }

  /*================================

見出し

=================================*/
  /*游ゴシック*/
  h1,
  h2,
  h3,
  h4 .entry-title,
  .post .entry-title {
    /* font-family: Helvetica, "游ゴシック", "Yu Gothic", sans-serif; */
    padding: .4rem 0;
  }

  h1,
  .entry-title,
  .post .entry-title {
    font-size: 3rem;
  }

  h2 {
    font-size: 2.6rem;
  }

  h3 {
    font-size: 2.2rem;
  }

  h4 {
    font-size: 2.2rem;
  }

  /*================================

スペース

=================================*/
  /***** 全スペースなし *****/
  .none {
    margin: 0;
    padding: 0;
  }

  /***** マージントップ *****/
  .mTopS {
    margin-top: 2rem;
  }

  .mTopM {
    margin-top: 5rem;
  }

  .mTopL {
    margin-top: 8rem;
  }

  /***** マージンボトム *****/
  .mBtmS {
    margin-bottom: 2rem;
  }

  .mBtmM {
    margin-bottom: 5rem;
  }

  .mBtmL {
    margin-bottom: 8rem;
  }

  /***** マージンレフト *****/
  .mLftS {
    margin-left: 2rem;
  }

  .mLftM {
    margin-left: 5rem;
  }

  .mLftL {
    margin-left: 8rem;
  }

  /***** マージンライト *****/
  .mRgtS {
    margin-left: 2rem;
  }

  .mRgtM {
    margin-left: 5rem;
  }

  .mRgtL {
    margin-left: 8rem;
  }

  /***** パディングトップ *****/
  .pTopS {
    padding-top: 2rem;
  }

  .pTopM {
    padding-top: 5rem;
  }

  .pTopL {
    padding-top: 8rem;
  }

  /***** パディングボトム *****/
  .pBtmS {
    padding-bottom: 2rem;
  }

  .pBtmM {
    padding-bottom: 5rem;
  }

  .pBtmL {
    padding-bottom: 8rem;
  }

  /***** パディングレフト *****/
  .pLftS {
    padding-left: 2rem;
  }

  .pLftM {
    padding-left: 5rem;
  }

  .pLftL {
    padding-left: 8rem;
  }

  /***** パディングライト *****/
  .pRgtS {
    padding-right: 2rem;
  }

  .pRgtM {
    padding-right: 5rem;
  }

  .pRgtL {
    padding-right: 8rem;
  }

  /*================================

テーブル

=================================*/
  .tbl01 th {
    width: 26%;
  }

  .tbl01 th,
  .tbl01 td {
    display: table-cell;
    border-bottom: 1px #ccc solid;
  }

  /*================================

iframeのレスポンシブOFF

=================================*/
  .iframeWrap {
    padding-bottom: 56.25%;
  }
}

@media screen and (min-width : 960px) {

  /*//////////// ９６０ｐｘ以上からのデザイン ///////////////////////////////////////////////////////////////////////////*/
  /***** コンテナ左右横余白解除 *****/
  .container {
    margin: 0 auto;
  }

  /***** ポイント用リンク opacityのスマホボタンバグ対策 *****/
  a.linkPoint:hover {
    opacity: 0.8;
  }
}



/*//////////// モバイルファースト ///////////////////////////////////////////////////////////////////////////*/
/*================================

body

=================================*/

body {
  font-size: 1.5em;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", monospace, sans-serif;
  line-height: 1.5;
  font-feature-settings: "palt";
  color: #555;
  background: #f5f4f0;
  margin: 0;
  padding: 0;
  overflow-wrap: break-word;
}


/* 固定ページwrap */
#pageWrap {
  margin: 1em .5em;
}

#mainWrap {
  margin: 1em 0 0;
}

/* 画像を右側に配置 */
.flexImg {
  margin-bottom: .4em;
}

.flexImg img {
  width: 100%;
}

/* 画像を横２列に配置 */
.flexImg02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.flexImg02 img {
  margin-bottom: .4em;
  width: 100%;
}

/* 固定ページ見出し */
.entry-header {
  border: 0;
  margin-right: calc(50% - 50vw);
  /* breaking-out */
  margin-left: calc(50% - 50vw);
  /* breaking-out */
  margin-top: -1em;
  background-color: #4269a7;
  background-image: none;
  padding: 20px 10px;
}

/* シングルページ見出し */
.entry-header-single {
  border: 0;
  margin: 0 0 1em 0;
  background-color: #4269a7;
  border-radius: 12px;
  padding: 16px;
  background-image: none;
}

.entry-header-single h1.entry-title {
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.2;
  color: #fefefe;
}

/* 共通見出し */
h1.entry-title {
  font-size: 2.3rem;
  font-weight: normal;
  line-height: 1.2;
  color: #fefefe;
}

.entry-header p {
  line-height: 1.2;
  color: #d7eaf7;
  margin: 0;
  padding: 10px 0 0 0;
}

#mainWrap main h2 {
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.2;
  margin: .4em 0 .6em;
  position: relative;
}

#mainWrap main h2:first-of-type {
  margin: .4em 0 .6em;
}

#mainWrap main h3 {
  font-size: 1.7rem;
  line-height: 1.2;
  font-weight: normal;
  position: relative;
  color: #fefefe;
  padding: .5em .5em .5em 1em;
  margin: .6em 0;
  background-color: #7FAEDF;
  border-radius: 4px;
}

#mainWrap main h3::after {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: '';
  width: .6em;
  height: .2em;
  border-radius: 0 2px 2px 0;
  background-color: #fefefe;
}

#mainWrap main h4 {
  font-size: 1.7rem;
  font-weight: normal;
  color: #4269a7;
  line-height: 1.2;
  margin: .4em 0 .6em;
  border-bottom: 2px dotted #4269a7;
}

/* 背景MAX用 */
section {
  position: relative;
}

section::before,
section::after {
  position: absolute;
  content: '';
  pointer-events: none;
}

/* 背景MAX下三角 */
.ss-style-triangles::after {
  left: 50%;
  width: 40px;
  height: 40px;
  -webkit-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
}

.ss-style-triangles::after {
  bottom: -20px;
  z-index: 10;
  background: inherit;
}

/* 背景MAX上下半円 */
.ss-style-halfcircle::before,
.ss-style-halfcircle::after {
  left: 50%;
  z-index: 10;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: inherit;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.ss-style-halfcircle::before {
  top: -30px;
}

.ss-style-halfcircle::after {
  bottom: -30px;
}

/* 背景MAX上半円 */
.ss-style-halfcircleTop::before {
  left: 50%;
  z-index: 10;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: inherit;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.ss-style-halfcircleTop::before {
  top: -30px;
}

.bgSec01 {
  padding: 2rem 0 3rem;
  margin: 0 0 4rem 0;
}

.bgSec02 {
  padding: 4rem 0;
  margin: 4rem 0;
}

/* 背景MAXカラーパターン */
.bgColor01 {
  background-color: #c8afd4;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23ffffff' fill-opacity='0.3' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
}

.bgColor02 {
  background-color: #e0efff;
}

/*================================

header

=================================*/
header {
  background-color: #fff;
  border-top: 4px #4269a7 solid;
}

#headerWrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 6px 5px 5px;
  display: flex;
  justify-content: space-between;
}

#headerWrap h1 {
  flex-basis: 49%;
  align-self: center;
}

#headerWrap .tel {
  flex-basis: 49%;
  align-self: center;
}

/* ヘッダーオファー */
#headerOffer {
  display: none;
}

/*================================

topSec04 選ばれる理由

=================================*/
.top-reasonttl {
  display: block;
  margin: 0 auto;
}

.top-reason {
  background: #fefefe;
  margin: 0 0 1em 0;
  padding: .5em;
  border-radius: 0 0 6px 6px;
}

.top-reason h3 {
  color: #4269a7;
  margin-bottom: .8em;
  padding-bottom: .2em;
  border-bottom: 2px #4269a7 dotted;
}

/* 選ばれる理由ページ*/
.reasonNum {
  background-color: #c8afd4;
  border-radius: 0 12px 12px 0;
  color: #fefefe;
  display: inline-block;
  font-weight: bold;
  padding: 2px 20px 4px 12px;
  margin-top: .6em;
  border-left: .6em #4269a7 solid;
}

/*================================

topSec05 診療メニュー

=================================*/
.topMenuBg {
  display: none;
}

/*================================

topSec06 院長スタッフ紹介

=================================*/
.profile {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.career {
  flex-basis: 62%;
  font-size: 1.2rem;
}

.profileSub {
  font-size: 1rem;
}

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

.career dl dd {
  border-bottom: 1px #ccc dotted;
  padding-bottom: .4em;
  margin-bottom: .6em;
}

.doctor {
  flex-basis: 36%;
  text-align: right;
}

.massage {
  background-color: #fefefe;
  border-radius: 12px;
  margin-top: 1em;
  padding: 1em;
}

.massage p:last-child {
  margin: 0;
  padding: 0;
}

/*================================

topSec07 医院案内アクセス

=================================*/
.google-iframeWrap {
  padding-bottom: 52.1%;
}

.access {
  background-color: #fefefe;
  border: 2px #c8afd4 solid;
  border-radius: 12px;
  margin: 1em 0;
  padding: 1em;
}

.accessLogo {
  width: 84%;
  margin: 0 auto;
  text-align: center;
}

.topAccess {
  list-style: none;
  margin-top: .5em;
  font-size: 1.3rem;
}

.topAccess li {
  position: relative;
  padding: 0 0 .5em 1em;
  line-height: 1.3;
}

.topAccess .root01:before {
  content: "\f238";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #4269a7;
  position: absolute;
  left: 0;
  top: 0;
}

.topAccess .root02:before {
  content: "\f540";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #4269a7;
  position: absolute;
  left: -1px;
  top: 0;
}

.topAccess .adress:before {
  content: "\f041";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #4269a7;
  position: absolute;
  left: 0;
  top: 0;
}

/*================================

topSec08 よくある質問と答え

=================================*/
a.topFaq {
  display: block;
  width: 94%;
  margin: 2em auto;
  text-align: center;
  border-radius: 50px;
  background-color: #ff8c00;
  padding: .7em;
  color: #fefefe;
  text-decoration: none;
}

.topFaq:before {
  content: "\f086";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fefefe;
}

/* よくある質問ページ */
.faq {
  margin-top: 1.4em;
}

.faq dt {
  background-color: #c8afd4;
  border-radius: 12px 12px 0 0;
  color: #fff;
  font-size: 1.1em;
  line-height: 1.3em;
  padding: .8em;
}

.faq dd {
  border-width: 0 1px 1px;
  border-style: none solid solid;
  border-color: #c8afd4;
  background-color: #fefefe;
  border-radius: 0 0 12px 12px;
  margin-bottom: 2em;
  padding: .8em;
}

.faq img {
  border-radius: 12px;
  margin: 0 0 .5em .5em;
}

.faq p {
  margin-bottom: 1.6rem;
}

.faq dd p:last-child {
  margin-bottom: 0;
}

/*================================

response 診療スケジュール レスポンス

=================================*/
.topResponse {
  border-radius: 12px;
  background-color: #4269a7;
  margin-bottom: 1em;
  padding: 1em;
}

.responseFlex {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

/* スケジュール左 */
.schedTxt {
  flex-basis: 100%;
}

.responseTel {
  display: none;
}

.sched {
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  border-radius: 12px;
  display: flex;
  justify-content: space-between;
  font-size: 1.3rem;
  padding: 1em 1.6em .8em 1.6em;
  text-align: center;
}

.time {
  flex-basis: 30%;
  white-space: nowrap;
  border-right: 1px #ccc dashed;
  text-align: left;
}

.timeSub {
  font-size: 1.2rem;
  line-height: 1.4;
  color: #fefefe;
  text-align: right;
  margin: .4em;
}

/* スケジュール右イメージ */
.schedImage {
  flex-basis: 0%;
}

/* 問い合わせボタン */
a.responseMail {
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  border-radius: 12px;
  border: 1px #eee solid;
  background-color: #fc9d29;
  padding: .7em;
  color: #fefefe;
  text-decoration: none;
}

.responseMail:before {
  content: "\f0e0";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fefefe;
}

/* 診療表オン・オフ */
.schedOn {
  color: #fc9d29;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.schedOff {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*================================

aside サイドナビゲーション

=================================*/
#menuWrap {
  display: none;
}

#bnrList {
  display: block;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin: 1em 0 0 0;
}

#bnrList li {
  width: calc(50% - 10px);
  align-items: center;
  justify-content: space-between;
}

/*================================

footer フッター

=================================*/
/* PCフッターメニュー非表示 */
footer {
  display: none;
}

#footerOffer {
  margin: 0;
  background-color: #d7eaf7;
}

/* スマホ下部固定メニューバー */
#fixSp {
  width: 100%;
  height: 60px;
  display: flex;
  justify-content: space-between;
  background-color: #4269a7;
  position: fixed;
  bottom: 0px;
  z-index: 99;
}

#fixSp div {
  border-top: 1px #fff solid;
  border-right: 1px #fff solid;
  color: #fefefe;
  flex: 1 1 25%;
  font-size: 1.2rem;
  line-height: 1;
  padding-top: 3px;
  text-align: center;
}

#fixSp div:last-child {
  border-right: none;
}

#fixSp a {
  color: #fefefe;
  text-decoration: none;
}

/* コピーライト */
#copy {
  font-size: 1.2rem;
  text-align: center;
  padding: 14px 0 74px 0;
  background: #4269a7;
  color: #fefefe;
}

/*================================

ContactForm7カスタマイズ

=================================*/
/* 入力部分 */
input[type="email"],
input[type="text"],
textarea {
  width: 100%;
  font-size: 100%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.formTitle {
  display: flex;
  align-items: center;
  margin-bottom: .4em;
}

.formOption {
  width: 100%;
  display: flex;
  margin-bottom: 14px;
}

.formDay {
  white-space: nowrap;
  width: 22%;
  margin-right: 8%;
}

.formTime {
  white-space: nowrap;
  width: 28%;
}

.formRequired {
  margin-left: 10px;
  padding: 1px 6px 2px;
  font-size: 70%;
  vertical-align: middle;
  background: #DC3437;
  color: #fff;
  border-radius: 4px;
}

/* 送信ボタン */
.wpcf7 input[type="submit"] {
  width: 100%;
  font-size: 18px;
  margin: 0 auto;
  text-align: center;
  text-decoration: none;
  color: #ffffff;
  background: #fc9d29;
  padding: .8em;
  border-radius: 4px;
  border: 0;
}

.wpcf7 input[type="submit"]:hover {
  background: #ff9696;
}

.wpcf7-submit {
  cursor: pointer;
}

.wpcf7-mail-sent-ok {
  display: none !important;
}

/*================================

投稿カテゴリー一覧ページ

=================================*/
.page-ymd {
  background-color: #bbb;
  border-radius: 4px;
  color: #fefefe;
  font-size: .7em;
  letter-spacing: .2em;
  padding: .1em .6em;
}

/*================================

スマホナビページ

=================================*/
.menusp {
  padding-bottom: 70px;
}

.menusp h3 {
  background-color: #4269a7;
  border-radius: 6px;
  color: #fefefe;
  padding: .6em .8em .4em;
}

.menusp ul {
  padding: .4em .8em 0;
}

.menusp ul li a {
  text-decoration: none;
  display: block;
}

/*================================

SNSシェアボタン

=================================*/
#twitter {
  background-color: #55acee;
}

#facebook {
  background-color: #3b5998;
}

#line {
  background-color: #00b900;
}

.sns-area {
  width: 100%;
  margin: 1em auto;
  display: block;
}

.sns-area a {
  text-decoration: none;
}

.sns-share {
  float: left;
  width: 32.3%;
  margin: 0 0.5% 1em 0.5%;
  display: inline-block;
}

.sns-link {
  display: block;
  text-align: center;
  color: #fff !important;
  font-size: 1.2rem;
  padding: 10px 0;
  box-sizing: border-box;
  border-radius: 4px;
}

/*================================

PCのみ<br class="pcBr">で改行

=================================*/
.pcBr {
  display: none;
}

@media screen and (min-width : 420px) {
  /*//////////// ４２０ｐｘ以上からのデザイン /////////////////////////////////////////////////////////////////*/

  /*================================

body

=================================*/
  /* 固定ページ画像配置調整 */
  .flexImg {
    float: right;
    margin-left: .4em;
    width: 180px;
  }

  /* 画像を横２列に配置 */
  .flexImg02 {
    flex-wrap: nowrap;
    justify-content: space-around;
  }

  .flexImg02 figure,
  .flexImg02 p {
    width: 353px;
    padding: 0 0 0 .2em;
  }

  /* 固定ページ見出し */
  .entry-header {
    margin: 0 0 1em 0;
    width: 100%;
    height: 150px;
    background-size: cover;
    border-radius: 12px 12px 0 0;
    padding: 20px;
    border-bottom: 1px #ccc solid;
  }

  /* 共通ページ見出し */
  h1.entry-title {
    font-size: 3rem;
    font-weight: 500;
    color: #555;
  }

  .entry-header p {
    font-size: 1.4rem;
    color: #888;
    margin: 0;
    padding: 10px 0 0 0;
  }










  /*================================

header

=================================*/
  header {
    width: 100%;
  }
}

#megamenu {
  display: none;
}

@media screen and (min-width : 768px) {
  /*//////////// ７６８ｐｘ以上からのデザイン ///////////////////////////////////////////////////////////////////////////*/

  body {
    background: url(./img/common/pc_bg.png) repeat;
    font-size: 1.7rem;
    line-height: 1.7;
  }


  #megamenu {
    display: block;
    width: 100%;
    margin: 0 auto;
    background-color: #fff;
    border-top: 1px #ccc solid;
    border-bottom: 2px #4269a7 solid;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 99;
  }

  .menuWrap {
    max-width: 960px;
    margin: 0 auto;
  }

  .menu-container {
    width: 100%;
    background: #fff;
    text-align: left;
  }

  .menu>ul {
    margin: 0 auto;
    width: 100%;
    list-style: none;
    padding: 0;
    position: relative;
    /* IF .menu position=relative -> ul = container width, ELSE ul = 100% width */
    box-sizing: border-box;
  }

  .menu>ul:before,
  .menu>ul:after {
    content: "";
    display: table;
  }

  .menu>ul:after {
    clear: both;
  }

  .menuEng,
  .menuEng a {
    font-size: .6em;
    color: #999;
  }

  .menu>ul>li {
    float: left;
    width: 20%;
    background: #fff;
    padding: 0;
    margin: 0;
    white-space: nowrap;
    text-align: center;
    line-height: 1.2;
  }

  .menu>ul>li a {
    text-decoration: none;
    padding: 1.4em 0;
    display: block;
    border-left: 1px dotted #ddd;
    color: #4269a7;
  }

  .menu>ul>li:last-child a {
    border-right: 1px dotted #ddd;
  }

  .menu>ul>li:hover {
    background: #ede5f1;
  }

  .menu>ul>li>ul {
    display: none;
    width: 100%;
    background: #fff;
    border-top: 2px solid #4269a7;
    padding: 20px;
    position: absolute;
    z-index: 97;
    left: 0;
    margin: 0;
    list-style: none;
    box-sizing: border-box;
    box-shadow: 0px 4px 2px -2px rgba(0, 0, 0, 0.2);
    border-radius: 0 0 12px 12px;
  }

  .menu>ul>li>ul:before,
  .menu>ul>li>ul:after {
    content: "";
    display: table;
  }

  .menu>ul>li>ul:after {
    clear: both;
  }

  .menu>ul>li>ul>li {
    margin: 0;
    padding-bottom: 0;
    list-style: none;
    width: 25%;
    background: none;
    float: left;
    text-align: left;
  }

  .menu>ul>li>ul>li a {
    color: #555;
    padding: .2em 0;
    width: 95%;
    display: block;
  }

  .menu>ul>li>ul>li>ul {
    display: block;
    padding: 0;
    margin: 0;
    list-style: none;
    box-sizing: border-box;
  }

  .menu>ul>li>ul>li>ul:before,
  .menu>ul>li>ul>li>ul:after {
    content: "";
    display: table;
  }

  .menu>ul>li>ul>li>ul:after {
    clear: both;
  }

  .menu>ul>li>ul>li>ul>li {
    float: left;
    width: 100%;
    padding: .5em 0 .5em 1em;
    margin: 0;
    position: relative;
  }

  .menu>ul>li>ul>li>ul>li::after {
    display: block;
    content: '';
    position: absolute;
    top: 1em;
    left: 0;
    width: 6px;
    height: 6px;
    border-right: 1px solid #4269a7;
    border-bottom: 1px solid #4269a7;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  .menu>ul>li>ul>li>ul>li a {
    border: 0;
    font-size: .9em;
  }

  .menu>ul>li>ul>li>ul>li a:hover {
    color: #4269a7;
  }

  .menu>ul>li>ul.normal-sub {
    width: 300px;
    left: auto;
    padding: 10px 20px;
  }

  .menu>ul>li>ul.normal-sub>li {
    width: 100%;
  }

  .menu>ul>li>ul.normal-sub>li a {
    border: 0;
    padding: 1em 0;
  }

  /*================================

body

=================================*/
  /* 固定ページwrap */
  #pageWrap {
    margin: 1em .5em;
  }

  #mainWrap {
    margin: 1em auto;
  }

  /* 固定ページ画像配置調整 */
  .flexImg {
    float: right;
    margin-left: .4em;
    width: 200px;
  }

  /* 画像を横２列に配置 */
  .flexImg02 {
    justify-content: space-between;
  }

  /* シングルページ見出し */
  .entry-header-single {
    margin: 0 0 1em 0;
    background-color: #4269a7;
    border-radius: 12px;
    padding: 16px;
  }

  .entry-header-single h1.entry-title {
    font-size: 3rem;
    font-weight: 500;
  }

  .entry-header p {
    font-size: 1.5rem;
    line-height: 1.4;
    color: #888;
    width: 400px;
  }

  #mainWrap main h2 {
    font-size: 2.6rem;
    font-weight: 500;
  }

  #mainWrap main h3 {
    font-size: 2.1rem;
    font-weight: 500;
    padding: .5em .5em .5em 1.2em;
  }

  #mainWrap main h4 {
    font-size: 2.1rem;
    font-weight: 500;
  }

  /* 背景MAX下三角 */
  .ss-style-triangles::after {
    width: 100px;
    height: 100px;
  }

  .ss-style-triangles::after {
    bottom: -40px;
    background: inherit;
  }

  /* 背景MAX上下半円 */
  .ss-style-halfcircle::before,
  .ss-style-halfcircle::after {
    width: 100px;
    height: 100px;
  }

  .ss-style-halfcircle::before {
    top: -40px;
  }

  .ss-style-halfcircle::after {
    bottom: -40px;
  }

  /* 背景MAX上半円 */
  .ss-style-halfcircleTop::before {
    width: 100px;
    height: 100px;
  }

  .ss-style-halfcircleTop::before {
    top: -40px;
  }

  /* 背景MAXカラーパターン＆スペース */
  .bgSec01 {
    padding: 5rem 0 8rem;
    margin: 0 0 9rem;
  }

  .bgSec02 {
    padding: 7rem 0 5rem;
    margin: 8rem 0;
  }

  .bgSec03 {
    padding: 8rem 0 2rem;
    margin: 8rem 0 0;
  }

  /*================================

header

=================================*/
  #headerWrap {
    max-width: 960px;
    padding: 10px 5px;
  }

  #headerWrap h1 {
    width: 480px;
    flex-basis: 50%;
    height: 0;
    padding-bottom: 7.8125%;
    /* アスペクト比 元画像の高さ÷画像の幅×100 */
    background: url(./img/header/logo_pc2.png) top left no-repeat;
    background-size: contain;
  }

  #headerWrap h1 img {
    display: none;
  }

  #headerWrap .tel {
    width: 480px;
    flex-basis: 50%;
    height: 0;
    padding-bottom: 7.8125%;
    /* アスペクト比 元画像の高さ÷画像の幅×100 */
    background: url(./img/header/tel_pc2.png) top center no-repeat;
    background-size: contain;
  }

  #headerWrap .tel img {
    display: none;
  }

  /* メインイメージ */
  #hero h2 {
    display: none;
  }

  #hero {
    width: 100%;
    background: #fefefe url(./img/top/hero_bg_pc2.png) top center no-repeat;
  }

  #heroPc {
    max-width: 960px;
    height: 0;
    margin: 0 auto;
    padding-top: 86.4583%;
    /* アスペクト比 元画像の高さ÷画像の幅×100 */
    background: url(./img/top/hero_pc.png) top center no-repeat;
    background-size: contain;
  }

  /* ヘッダーオファー */
  #headerOffer {
    display: block;
  }

  /*================================

topSec04 選ばれる理由

=================================*/
  .top-reason {
    margin: 0 0 2em 0;
    padding: 1em 3em 2em;
    border-radius: 0 0 20px 20px;
    ;
  }

  .top-reason h3 {
    font-size: 2.6rem;
    margin-bottom: .8em;
  }

  /*================================

topSec05 診療メニュー

=================================*/
  .topMenuBg {
    display: block;
    width: 100%;
    background-color: #4269a7;
    border-radius: 20px;
    margin: 80px 0 60px;
    text-align: center;
    padding: 30px 40px 40px;
  }

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

  /* メニューボタン*/
  .buttonTopMenu {
    background: #4269a7;
    border: 2px #fff solid;
    border-radius: 2px;
    color: #fff;
    display: inline-block;
    padding: 2em 1em;
    margin: 10px;
    text-decoration: none !important;
    text-align: center;
    position: relative;
    overflow: hidden;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    -webkit-transition: 0.7s;
    transition: 0.7s;
    width: 30%;
  }

  .buttonTopMenu:before {
    content: "";
    position: absolute;
    bottom: -90px;
    right: -90px;
    width: 10px;
    height: 10px;
    background: #fff;
    border-radius: 50%;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    -webkit-transition: 0.7s;
    transition: 0.7s;
  }

  .buttonTopMenu span {
    position: relative;
  }

  .buttonTopMenu:hover,
  .buttonTopMenu:focus {
    color: #4269a7;
  }

  .buttonTopMenu:hover:before,
  .buttonTopMenu:focus:before {
    width: 400px;
    height: 400px;
    opacity: 1;
  }

  .topMenu a {
    color: #fff;
  }

  /*================================

topSec06 院長スタッフ紹介

=================================*/
  .profile {
    max-width: 960px;
  }

  .profileSub {
    font-size: 1.4rem;
  }

  .career dl dt {
    clear: both;
    float: left;
    font-weight: bold;
  }

  .career dl dd {
    padding-left: 36%;
  }

  /*================================

topSec07 医院案内アクセス

=================================*/
  .google-iframeWrap {
    padding-bottom: 36.46%;
  }

  .access {
    max-width: 960px;
    padding: 1.5em 1em;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .accessLogo {
    width: 50%;
    margin-right: auto;
  }

  .topAccess {
    width: 50%;
    margin-top: 0;
    font-size: 1.5rem;
  }

  .topAccess li {
    position: relative;
    padding: 0 0 .5em 1.4em;
    line-height: 1.4;
  }

  /*================================

topSec08 よくある質問と答え

=================================*/
  a.topFaq {
    transition: .5s;
    width: 50%;
    padding: 1.4em;
    font-size: 1.8rem;
    font-weight: bold;
  }

  .topFaq:hover {
    background-color: #4269a7;
  }

  /* よくある質問ページ */
  .faq dt {
    padding: 1em;
  }

  .faq dd {
    padding: 1em;
  }

  .faq img {
    border-radius: 12px;
    margin: 0 0 1em 1em;
  }

  /*================================

response レスポンス

=================================*/
  .topResponseBg {
    background: url(./img/common/pc_responsebg.png) repeat;
    padding: 2em 0;
    border-top: 1px #d7d7d7 solid;
    background: #ddd;
  }

  .topResponse {
    background-color: #faf9f7;
    border: 1px #d7d7d7 solid;
    margin: 1em 0;
    padding: 30px 29px;
  }

  /* スケジュール左表 */
  .schedTxt {
    flex-basis: 60%;
  }

  .responseTel {
    display: block;
  }

  .sched {
    justify-content: space-around;
    font-size: 1.6rem;
    padding: 1em 1.6em;
  }

  .timeSub {
    color: #555;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: .6em;
  }

  /* スケジュール右イメージ */
  .schedImage {
    display: block;
    flex-basis: 38%;
    background-size: contain;
  }

  /* 問い合わせボタン */
  a.responseMail {
    transition: .5s;
    padding: 1.4em;
    font-size: 1.7rem;
    font-weight: bold;
    /* font-family: Helvetica, "游ゴシック", "Yu Gothic", sans-serif; */
  }

  .responseMail:hover {
    background-color: #ff9696;
  }

  /*================================

aside サイドナビゲーション

=================================*/
  #asideNavi {
    display: block;
  }

  #asideNavi ul a {
    color: #fefefe;
    text-decoration: none;
  }

  #asideNavi ul a:hover {
    color: #d7eaf7;
  }

  #menuWrap {
    display: block;
    background-color: #4269a7;
    border-radius: 12px;
  }

  .menuList {
    display: block;
    padding: 15px 10px;
    list-style-position: inside;
  }

  .menuList li {
    line-height: 1.2;
    padding: .6em 0 .6em .6em;
  }

  .menuList li:first-child {
    padding: 0;
  }

  .menuList li h3 {
    font-family: "メイリオ", Meiryo, sans-serif;
    background-color: #fefefe;
    border-radius: 8px;
    font-size: 1.6rem;
    font-weight: normal;
    color: #4269a7;
    padding: .4em .6em;
  }

  .menuList li span {
    color: #ddd;
    display: block;
    font-size: 1.2rem;
    line-height: 1;
    padding-top: .2em;
  }

  #bnrList li {
    width: 100%;
    margin-bottom: 10px;
  }

  /*================================

footer フッター

=================================*/
  /* スマホ問い合わせフローティング非表示 */
  #fixSp {
    display: none;
  }

  footer {
    display: block;
    max-width: 960px;
    margin: 0 auto;
    padding: 2em 0;
    color: #fefefe;
  }

  #footerOffer {
    display: none;
  }

  .footerMenu {
    margin-top: 1em;
    display: flex;
    justify-content: space-between;
  }

  .footerMenu01 {
    flex-basis: 40%;
  }

  .footerMenu02 {
    flex-basis: 59%;
    display: flex;
    justify-content: space-between;
  }

  .footerMenu02 ul {
    flex: 1 1 30%;
    padding: 0 2% 0
  }

  .footerMenu a {
    color: #313131;
    font-size: 1.4rem;
    text-decoration: none;
  }

  .footerMenu a:hover {
    color: #1d5cad;
    text-decoration: none;
  }

  /* フッターリストアロー */
  .arrow {
    list-style-type: none;
  }

  .arrow li {
    position: relative;
    padding: 0 0 0 14px;
    margin: 10px 0;
    line-height: 1.2;
  }

  .arrow li:before {
    counter-increment: list;
    content: "";
    display: block;
    position: absolute;
    left: 0;
    height: 0;
    width: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 7px solid #4269a7;
    top: .7em;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  /* コピーライト */
  #copy {
    width: 100%;
    font-size: 1.4rem;
    padding: 1em 0;
  }

  /*================================

SNSシェアボタン

=================================*/
  .sns-share {
    margin: .5em 0.5% 1em 0.5%;
  }

  .sns-link:hover {
    text-decoration: none;
    filter: alpha(opacity=70);
    -moz-opacity: 0.70;
    opacity: 0.70;
  }

  .sns-link {
    font-size: 1.5rem;
  }

  /*================================

PCのみ<br class="pcBr">で改行

=================================*/
  .pcBr {
    display: inline;
  }
}

@media screen and (min-width : 960px) {
  /*//////////// ９６０ｐｘ以上からのデザイン ///////////////////////////////////////////////////////////////////////////*/

  /*================================

body

=================================*/
  /* 固定ページ画像配置調整 */
  .flexImg {
    width: 238px;
  }

  /* 固定ページ見出し */
  #mainWrap main h1 {
    font-size: 3.2rem;
  }

  /*================================

header

=================================*/
  #pageWrap {
    margin: 1em auto;
  }

  header {
    /*background: #fff url(./img/header/header_bg.png) top center no-repeat;*/
  }

  #headerWrap {
    max-width: 960px;
    padding: 0;
  }

  #headerWrap h1 {
    max-width: 480px;
    height: 75px;
    margin: 10px auto 10px;
    padding-top: 0;
  }

  #headerWrap .tel {
    max-width: 480px;
    height: 75px;
    margin: 10px auto 10px;
    padding-top: 0;
  }

  /* メインイメージ */
  #heroPc {
    max-width: 960px;
    height: 780px;
    margin: 0 auto;
    padding-top: 0;
  }

  /*================================

topSec01 医院動画

=================================*/
  .top-iframeWrap {
    background: url(./img/top/sec01/movie_pc.png) no-repeat;
    width: 960px;
    height: 640px;
  }

  .top-iframeWrap img,
  .top-iframeWrap iframe {
    max-width: 800px;
    max-height: 450px;
    position: absolute;
    top: 100px;
    left: 80px;
  }

  /*================================

topSec06 院長スタッフ紹介

=================================*/
  .career {
    font-size: 1.4rem;
  }

  .profileSub {
    font-size: 1.6rem;
  }

  .massage {
    padding: 1em 2em;
  }

  /*================================

topSec08 よくある質問と答え

=================================*/
  a.topFaq {
    margin: 4em auto;
  }

  /*================================

aside サイドナビゲーション

=================================*/
  .menuList li {
    padding: .6em 0 .6em .8em;
  }

  .menuList li h3 {
    padding: .4em .8em;
  }
}


/*================================

ブログ表示

=================================*/

#newslist ul {
  margin: 0px;
  padding: 0px;
  width: auto;
  margin-bottom: 40px;


}

#newslist li {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
}


#newslist a {
  display: block;
  position: relative;
  color: #0e17a7;
  text-decoration: none;
  margin-bottom: 5px;
  padding-top: 10px;
  padding-right: 25px;
  padding-bottom: 10px;
  padding-left: 0px;
  line-height: 140%;
  font-size: 100%;
  width: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-bottom: 1px solid #D9D9D9;
}

#newslist a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  border-top: solid 2px #02a6f3;
  border-right: solid 2px #02a6f3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
}

#newslist a:hover {
  color: #6ec7f0;
}

.top_info {
  margin-bottom: 60px;
}

.c-both {
  clear: both;
  display: block;
  visibility: hidden;
}


h3.widget-title {
  background: #00abdc;
  margin-top: 20px;
  color: #fff;
  font-size: 16px;
  font-weight: nomal;
  padding: 15px 15px;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

#recent-posts-2 ul {
  background: #fff;

}

#recent-posts-2 ul {
  background: #fff;
  padding: 10px;
  border-bottom-right-radius: 8px;
  border-bottom-left-radius: 8px;

}

#recent-posts-2 li {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
  color: #00abdc;
}


#recent-posts-2 a {
  display: block;
  position: relative;
  color: #0e17a7;
  text-decoration: none;
  margin-bottom: 5px;
  padding-top: 10px;
  padding-right: 25px;
  padding-bottom: 10px;
  padding-left: 0px;
  line-height: 140%;
  font-size: 100%;
  width: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-bottom: 1px solid #D9D9D9;
  color: #00abdc !important;
}

#recent-posts-2 a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 7px;
  height: 7px;
  margin-top: -4px;
  border-top: solid 2px #02a6f3;
  border-right: solid 2px #02a6f3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";

}

.flexImg02 figure,
.flexImg02 p {
  width: 450px;
  padding: 0 0 0 .2em;
}

section.container {
  margin-bottom: 60px;
}

.yoyaku01 {
  float: left;
  margin-bottom: 20px;
  width: 49%;

}

.yoyaku02 {
  float: right;
  margin-bottom: 20px;
  width: 49%;
}

.side_banner {
  margin-top: 20px;
}

.cta_mail {
  position: static;
  display: block;
  padding: 0;
  color: #a67a3f;
  text-align: center;
  text-decoration: none;
  transition: all .3s;
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 48px;
  font-weight: bold;
  cursor: default;
  text-decoration: none;
}

.cta_mail:link {

  text-decoration: none;

}

.cta_mail:visited {
  text-decoration: none;
}

.cta_mail:hover {

  color: #a67a3f;
  text-decoration: none;
}

@media screen and (max-width : 960px) {
  .yoyaku01 {
    float: left;
    margin-bottom: 10px;
    width: 49%;
    text-align: center;
  }

  .yoyaku02 {
    float: right;
    margin-bottom: 10px;
    width: 49%;
    text-align: center;
  }
}

@media screen and (max-width : 750px) {
  .yoyaku01 {
    float: none;
    margin-bottom: 10px;
    width: 100%;
    text-align: center;
  }

  .yoyaku02 {
    float: none;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
  }

  .cta_mail {
    position: relative;
    display: inline-block;
    padding: .9em 3em;
    background-color: #32b52d;
    border: 2px solid #32b52d;
    color: #fff;
    text-align: center;
    text-decoration: none;
    transition: all .3s;
    margin-top: 20px;
    margin-bottom: 40px;
    width: 85%;
    font-size: 5vw;
    border-radius: 4px;
    font-weight: bold;
  }

  .cta_mail::after {
    position: absolute;
    top: 50%;
    right: .2em;
    content: '';
    margin-top: -5px;
    border: 7px solid transparent;
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-left-color: #fff;
    transition: all .3s;
  }

  .cta_mail:link {
    color: #fff;
    text-decoration: none;

  }

  .cta_mail:visited {
    color: #fff;
  }

  .cta_mail:hover {
    background-color: #fff;
    color: #32b52d;
    text-decoration: none;
  }

  .cta_mail:hover::after {
    border-left-color: #32b52d;
  }



}


#gaiyou {


  width: 100%;
  font-size: 95%;
  line-height: 180%;
  text-shadow: 0px 1px 0px #FFFFFF;
  margin-bottom: 20px;
}

dl#gaiyou dl,
dl#gaiyou dt,
dl#gaiyou dd {
  margin: 0;
  padding: 0;
}

dl#gaiyou dt,
dl#gaiyou dd {
  padding: 8px;
  border-top: 1px solid #E3E3E3;
}

dl#gaiyou dt {
  border-top: 1px solid #E3E3E3;
  clear: left;
  float: left;
  width: 200px;
}

dl#gaiyou dd {
  border-top: 1px solid #E3E3E3;
  margin-left: 200px;

}


/* スマホ　*/
@media screen and (max-width: 750px) {
  #gaiyou {


    width: 100%;
    font-size: 95%;
    line-height: 180%;
    text-shadow: 0px 1px 0px #FFFFFF;
    margin-bottom: 20px;
  }

  dl#gaiyou dl,
  dl#gaiyou dt,
  dl#gaiyou dd {
    margin: 0;
    padding: 0;
  }

  dl#gaiyou dt,
  dl#gaiyou dd {
    padding: 8px;
    border-top: 1px solid #E3E3E3;
  }

  dl#gaiyou dt {
    border-top: 1px solid #E3E3E3;
    clear: left;
    float: none;
    width: auto;
  }

  dl#gaiyou dd {
    border-top: 1px solid #E3E3E3;
    width: auto;

  }
}


/*================================

メールフォーム

=================================*/

/* 必須マーク */
.must {
  color: #fff;
  margin-right: 10px;
  padding: 6px 10px;
  background: #F92931;
  border-radius: 4px;
  font-size: 14px;
}

/* 任意マーク */
.free {
  color: #fff;
  margin-right: 10px;
  padding: 6px 10px;
  background: #424242;
  border-radius: 20px;
}

/* 項目名を太字にする */
form p {
  font-weight: 600;
}

/* 入力項目を見やすくする */
input.wpcf7-form-control.wpcf7-text,
.wpcf7-date,
textarea.wpcf7-form-control.wpcf7-textarea {
  width: 100%;
  padding: 8px 15px;
  margin-right: 10px;
  margin-top: 5px;
  margin-bottom: 5px;
  border: 1px solid #d0d5d8;
  border-radius: 3px;
  font-size: 16px;
}

textarea.wpcf7-form-control.wpcf7-textarea {
  height: 200px;
}

/* 必須項目の入力欄を黄色にする */
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {
  background: rgba(255, 255, 142, 0.46);
}

/* 送信ボタンを見やすくする */
input.wpcf7-submit {
  width: 100%;
  height: 80px;
  background: #27c038;
  color: #fff;
  font-size: 20px;
  font-weight: 600;
}

/* エラーメッセージを見やすくする */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
  color: red;
  font-weight: 600;
}

.cation {
  font-size: 14px;
  line-height: 160%;
}

.wpcf7 select {
  width: 30%;
  font-size: 100%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 4px;
}

/*全体・その他*/
.google_map iframe {
  width: 100%;
}

body {
  background: #fff;
}
/*h2*/
.page_h2 {
  text-align: left;
  background: #036eb8;
  color: #fff;
  padding: 0.7rem 2rem;
  border-radius: 0.5rem;
  margin-bottom: 2rem;
  font-size: 3rem;
}
.page_h2.flex_h2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.page_h2.flex_h2 span {
  font-size: 1.5rem;
}
/*home*/
.fv_video_pc video {
  display: block;
  width: 100%;
}
.fv_video_sp video {
  width: 100%;
}
.director_profile {
  margin-bottom: 3rem;
}
.onayami {
  margin-bottom: 3rem;
}

/*footer*/
.bottom_cta {
  background: #fff;
  padding: 3vw 0;
}
.bottom_cta_block {
  max-width: 960px;
  margin: 0 auto 2rem;
  text-align: center;
}
.sched {
  width: 84%;
  background: #f9f6f4;
}
.sched div {
  font-size: 2rem;
}
.schedOn {
  color: #9dcafc;
  font-size: 2.2rem;
}
.timeSub {
  font-size: 2rem;
  width: 85%;
  margin: 0 auto 3rem;
  color: #555;
}
a.responseMail {
  background: #F58D69;
  width: 85%;
}
.footerMenu {
  width: 85%;
  margin: auto;
  justify-content: center;
}
.welcome_block {
  margin-bottom: 2rem;
}
.price_block {
  margin-bottom: 3rem;
}
.price_title {
  margin-bottom: 2rem;
}
.dental_menu_block {
  margin-bottom: 6rem;
}
.access_block.block1 {
  margin-bottom: 6rem;
}
.access_block.block2 {
  margin-top: 3rem;
}
.tbl01.mBtmS {
  border: 3px solid #73a9e5;
}
.tbl01.mBtmS th {
  background: #E6EFFF;
}
.contact_title {
  width: 70%;
  margin: 0 auto 6rem;
}
.contact_block.block1 {
  margin-bottom: 6rem;
}
.cta_mail.tel_link {
  font-size: 7rem;
  color: #00bfe2;
  text-shadow: 3px 3px 8px #aaa;
  margin: 0 0 3rem;
}
.contact_block.block2 {
  margin-bottom: 6rem;
}
.contact_block.block3 {
  margin-bottom: 6rem;
}
.tbl01.mBtmS.requirements {
  border-color: #545176;
  border-width: 1px;
}
.tbl01.mBtmS.requirements th {
  background: #E7E6FF;
  color: #545176;
}
.tbl01.mBtmS.requirements td {
  background: #F4F3FF;
  color: #545176;
}
.tbl01.mBtmS.apply {
  border-color: #FCBECA;
  border-width: 1px;
}
.tbl01.mBtmS.apply th {
  background: #FFE6EA;
  color: #694E53;
}
.tbl01.mBtmS.apply td {
  background: #FFF6F8;
  color: #694E53;
}


/*スマホ*/
@media (max-width : 767px) {
  .bottom_cta_block {
		width: 90%;
	}
	.page_h2 {
		font-size: 2rem;
	}
	.page_h2.flex_h2 {
		flex-direction: column;
	}
	.page_h2.flex_h2 span {
		font-size: 1.2rem;
		margin-top: 0.4rem;
	}
	.sched {
		width: 100%;
	}
	.sched div {
		font-size: 1.5rem;
	}
	.schedOn {
		font-size: 1.6rem;
	}
	a.responseMail {
		width: 100%;
	}
  .timeSub {
		font-size: 1.6rem;
		text-align: left;
	}
  .cta_mail.tel_link {
		font-size: 3.6rem;
		padding: 0;
		background: no-repeat;
		border: 0;
		text-shadow: 3px 3px 8px #ccc;
	}
	.cta_mail.tel_link:after {
		display: none;
	}

}