@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-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-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-freedial:before {
  content: "\e900"; /***** フリーダイヤル *****/
}
.icon-mail:before {
  content: "\e901"; /***** メール *****/
  color: #fefefe;
}
.icon-menu:before {
  content: "\e903"; /***** メニュー *****/
}
.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"; /***** コメント *****/
  color: #ea3076;
}
.icon-comments:before {
  content: "\f086"; /***** コメント複数 *****/
}
.icon-phone:before {
  content: "\f098"; /***** 自宅電話 *****/
  color: #fefefe;
}
.icon-navicon:before {
  content: "\f0c9"; /***** スマホナビコン *****/
  color: #fefefe;
}
.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: "\e8b4"; /***** アクセス *****/
  color: #fefefe;
}
.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: #ea3076; /***** サイトのメインカラー *****/
}
.txtAcolor {
  color: #fe7aab; /***** サイトのアクセントカラー *****/
}
.txtMarker {
  background-color: #ff9; /***** 黄マーカー *****/
}
.tag {
  background-color: #ea3076; /***** カラー背景＋テキスト白 *****/
  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: #ea3076;
  text-decoration: underline;
}
a:visited {
  color: #ea3076;
  text-decoration: underline;
}
a:hover {
  color: #fe7aab;
  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: 0px 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: 11px;
  -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: #fe7aab;
  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: "icomoon";
  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: "icomoon";
  color: #fe7aab;
  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: "\e904";
  font-family: "icomoon";
  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;
}
}
