﻿@charset "utf-8";

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

  Parts

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

/*----------------------------------------------------------------------------------------------------

  診療時間　Table
  
----------------------------------------------------------------------------------------------------*/

.p-hrsTbl {
  width:100%;
  max-width: 540px;
  border-collapse:collapse;
	background-color: #fff;
}

.p-hrsTbl th,
.p-hrsTbl td {
  padding:0.6em;
  vertical-align:middle;
  text-align:center;
}

.p-hrsTbl tbody .line-am th,
.p-hrsTbl tbody .line-pm th{
}

.p-hrsTbl tbody .line-am {
  border-top:1px solid #e5e5e5;
  border-bottom:1px solid #e5e5e5;
}

.p-hrsTbl tbody .line-pm {
  border-bottom:1px solid #e5e5e5;
}

.p-hrsTbl tbody .line-am td:last-child,
.p-hrsTbl tbody .line-pm td:last-child{
}


.p-hrsTbl thead th{
  border-top:1px solid #e5e5e5;
	font-weight: 500;
}

.p-hrsTbl thead th:last-child{
}

.p-hrsTbl tbody td {
  color:#13b39b;
}

/*.p-hrsTbl thead th,*/
.p-hrsTbl tbody th {
  color: #13b39b;
}

.p-hrsTbl thead th {
  padding-bottom:0.8em;
}

.p-hrsTbl tbody td {
  line-height:1;
  /*font-size:0.8em;*/
  padding:1em 0.2em;
  white-space:nowrap;
}

.p-hrsTbl .ampm {
  display:inline-block;
  padding-left:0.5em;
  padding-right:0.5em;
  
}

.p-hrsTbl .am,
.p-hrsTbl .pm {
  display:inline-block;
  text-align:center;
  width:8em;
}

.p-hrsTbl .to {
  display:block;
  text-align:center;
  font-size:0.6em;
  padding-top:0.4em;
}

.p-hrsTbl .to__item {
  -webkit-writing-mode:vertical-rl;
  -ms-writing-mode:tb-rl;
  writing-mode:vertical-rl;
}

@media screen and (max-width:560px) {
  .p-hrsTbl {
    font-size:3.3vw;
  }
}


/*--------------------------------------------------------------------------------
  マーク
--------------------------------------------------------------------------------*/

.hrs-mk {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  display:inline-block;
  line-height:0;
  vertical-align:middle;
  box-sizing:border-box;
  width:18px;
  height:18px;
  position:relative;
}
/* 休診 ----------------------------------------*/
.hrs-mk2 {
text-indent:0%;
line-height: 1;
}
/* 診療 ----------------------------------------*/

.hrs-mk1 {
  width:16px;
  height:16px;
  background-color:#13b39b;
  /*border: 1px solid #ff869a;*/
  border-radius:100%;
}

/* 休診 ----------------------------------------*/

.hrs-mk0:before,
.hrs-mk0:after {
  display:block;
  content:"";
  width:2px;
  border-radius:2px;
  height:100%;
  background-color:#ff869a;
  position:absolute;
  top:0;
  left:50%;
}

.hrs-mk0:before {
  -webkit-transform:rotate(45deg);
  -o-transform:rotate(45deg);
  transform:rotate(45deg);
}

.hrs-mk0:after {
  -webkit-transform:rotate(-45deg);
  -o-transform:rotate(-45deg);
  transform:rotate(-45deg);
}

@media screen and (max-width:560px) {
  .hrs-mk,
  .hrs-mk1 {
    width:14px;
    height:14px;
  }
}


/*----------------------------------------------------------------------------------------------------

  Site title
  
----------------------------------------------------------------------------------------------------*/

.p-siteTtl a { display:block; }
.p-siteTtl a,
.p-siteTtl a:visited,
.p-siteTtl a:hover { color:inherit; text-decoration:none; }

.p-siteTtl {
  color:#127c56;
  line-height:1.3;
  position:relative;
  text-align:left;
}

.p-siteTtl a {
  text-align: center;
}

.p-siteTtl a span{
	display: block;
	  font-weight:700;
}

.l-ft .p-siteTtl a::after {
  background:url(../image/logo_white.svg) no-repeat center center;
}

.p-siteTtl .ttl-en {
  font-size:0.95em;
}

.p-siteTtl .ttl-jp {
  font-size:1.33em;
}


/*--------------------------------------------------------------------------------
  Headline
--------------------------------------------------------------------------------*/

.p-hdLine {
  font-family:"M PLUS Rounded 1c","M PLUS Rounded 1c locl";
  line-height:1;
  font-size:2.22em;
  font-weight:500;
  color:#12aaa5;
}

.p-hdLine__dot {
  display:inline-block;
  padding-left:0.5em;
  padding-right:0.5em;
  padding-bottom:0.6em;
  border-bottom:4px dotted #2fbfbb;
}

@media print,screen and (min-width:641px) {
  .p-hdLine { letter-spacing:0.05em; }
}

@media screen and (max-width:640px) {
  .p-hdLine { font-size:2em; }
}

@media screen and (max-width:480px) {
  .p-hdLine { font-size:1.88em; }
}


/*----------------------------------------------------------------------------------------------------

  Button
  
----------------------------------------------------------------------------------------------------*/

.p-btn {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  display:inline-block;
  vertical-align:middle;
  border:none;
  margin:0;
  outline:none;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
  line-height:1.2;
  position:relative;
  overflow:hidden;
  padding:0.88em 1.66em;min-width: 210px;
}

.p-btn[btn-txt="left"] {
  text-align:left;
  padding-left:1em;
}

.ua-pc .p-btn { transition:border 0.2s ease-out, background 0.2s ease-out, color 0.2s ease-out; }

.p-btn,
.p-btn:visited,
.p-btn:hover,
.ua-pc .p-btn:hover,
.p-btn a,
.p-btn a:visited,
.p-btn a:hover,
.ua-pc .p-btn a:hover { color:inherit; text-decoration:none; }


/* 矢印 */
.p-btn--txt .p-arrow {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}

.p-btn--txt:not([btn-arrow="prev"]) { padding-right:3em; }
.p-btn--txt[btn-arrow="prev"] { padding-left:3em; }

.p-btn--txt:not([btn-arrow="prev"]) .p-arrow { right:0.5em; }
.p-btn--txt[btn-arrow="prev"] .p-arrow { left:0.5em; }

.ua-pc .p-btn--txt:not([btn-arrow="prev"]):hover .p-arrow,
.ua-pc .p-btn--txt:not([btn-arrow="prev"]) a:hover .p-arrow { right:0.35em; }
.ua-pc .p-btn--txt[btn-arrow="prev"]:hover .p-arrow,
.ua-pc .p-btn--txt[btn-arrow="prev"] a:hover .p-arrow { left:0.35em; }

.ua-pc .p-btn--txt .p-arrow { transition:right 0.3s cubic-bezier(.23, 1, .32, 1), left 0.3s cubic-bezier(.23, 1, .32, 1); }
.ua-pc .p-btn--txt .p-arrow:before { transition:border-color 0.2s ease-out; }


/*--------------------------------------------------------------------------------
  Color
--------------------------------------------------------------------------------*/

/* 黒線
----------------------------------------------------------------------*/

.p-btn[p-btn-color="line"],
.p-btn[p-btn-color="line"]:visited,
.p-btn[p-btn-color="line"]:hover,
.p-btn[p-btn-color="line"] a,
.p-btn[p-btn-color="line"] a:visited,
.p-btn[p-btn-color="line"] a:hover {
  color:#0f1e3c;
  background-color:transparent;
  border:1px solid rgba(10,20,40,0.8);
}

.ua-pc .p-btn[p-btn-color="line"]:hover,
.ua-pc .p-btn[p-btn-color="line"] a:hover,
.ua-pc a:hover .p-btn[p-btn-color="line"] {
  color:#fff;
  background-color:#0f1e3c;
  border-color:#0f1e3c;
}

/* 矢印アイコン */
.ua-pc .p-btn[p-btn-color="line"]:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="line"] a:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before {
  border-color:transparent transparent transparent #fff;
}

.ua-pc .p-btn[p-btn-color="line"]:hover .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="line"] a:hover .p-arrow[arrow="prev"]:before {
  border-color:transparent #fff transparent transparent;
}

.ua-pc .p-btn[p-btn-color="line"]:hover .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="line"] a:hover .p-arrow[arrow="down"]:before {
  border-color:#fff transparent transparent transparent;
}


/* 水色
----------------------------------------------------------------------*/

.p-btn[p-btn-color="rblue"],
.p-btn[p-btn-color="rblue"]:visited,
.p-btn[p-btn-color="rblue"]:hover,
.p-btn[p-btn-color="rblue"] a,
.p-btn[p-btn-color="rblue"] a:visited,
.p-btn[p-btn-color="rblue"] a:hover {
  color:#fff;
  background-color:#6baaed;
}

.ua-pc .p-btn[p-btn-color="rblue"]:hover,
.ua-pc .p-btn[p-btn-color="rblue"] a:hover,
.ua-pc a:hover .p-btn[p-btn-color="rblue"] {
  color:#fff;
  background-color:#3283D8;
}

/* 矢印アイコン */
.p-btn[p-btn-color="rblue"] .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="rblue"]:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="rblue"] a:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before {
  border-color:transparent transparent transparent #fff;
}

.p-btn[p-btn-color="rblue"] .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="rblue"]:hover .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="rblue"] a:hover .p-arrow[arrow="prev"]:before {
  border-color:transparent #fff transparent transparent;
}

.p-btn[p-btn-color="rblue"] .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="rblue"]:hover .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="rblue"] a:hover .p-arrow[arrow="down"]:before {
  border-color:#fff transparent transparent transparent;
}


/* 赤
----------------------------------------------------------------------*/

.p-btn[p-btn-color="red"],
.p-btn[p-btn-color="red"]:visited,
.p-btn[p-btn-color="red"]:hover,
.p-btn[p-btn-color="red"] a,
.p-btn[p-btn-color="red"] a:visited,
.p-btn[p-btn-color="red"] a:hover {
  color:#fff;
  background-color:#aa0500;
}

.ua-pc .p-btn[p-btn-color="red"]:hover,
.ua-pc .p-btn[p-btn-color="red"] a:hover,
.ua-pc a:hover .p-btn[p-btn-color="red"] {
  color:#fff;
  background-color:#cb1d17;
}

/* 矢印アイコン */
.p-btn[p-btn-color="red"] .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="red"]:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="red"] a:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before {
  border-color:transparent transparent transparent #fff;
}

.p-btn[p-btn-color="red"] .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="red"]:hover .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="red"] a:hover .p-arrow[arrow="prev"]:before {
  border-color:transparent #fff transparent transparent;
}

.p-btn[p-btn-color="red"] .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="red"]:hover .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="red"] a:hover .p-arrow[arrow="down"]:before {
  border-color:#fff transparent transparent transparent;
}

/* pink
----------------------------------------------------------------------*/

.p-btn[p-btn-color="pink"],
.p-btn[p-btn-color="pink"]:visited,
.p-btn[p-btn-color="pink"]:hover,
.p-btn[p-btn-color="pink"] a,
.p-btn[p-btn-color="pink"] a:visited,
.p-btn[p-btn-color="pink"] a:hover {
  color:#fff;
  background-color:#eb5f73;
}

.ua-pc .p-btn[p-btn-color="pink"]:hover,
.ua-pc .p-btn[p-btn-color="pink"] a:hover,
.ua-pc a:hover .p-btn[p-btn-color="pink"] {
  color:#fff;
  background-color:#F98697;
}

/* 矢印アイコン */
.p-btn[p-btn-color="pink"] .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="pink"]:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="pink"] a:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before {
  border-color:transparent transparent transparent #fff;
}

.p-btn[p-btn-color="pink"] .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="pink"]:hover .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="pink"] a:hover .p-arrow[arrow="prev"]:before {
  border-color:transparent #fff transparent transparent;
}

.p-btn[p-btn-color="pink"] .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="pink"]:hover .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="pink"] a:hover .p-arrow[arrow="down"]:before {
  border-color:#fff transparent transparent transparent;
}

/* 文字pink
----------------------------------------------------------------------*/

.p-btn[p-btn-color="txt-pink"],
.p-btn[p-btn-color="txt-pink"]:visited,
.p-btn[p-btn-color="txt-pink"]:hover,
.p-btn[p-btn-color="txt-pink"] a,
.p-btn[p-btn-color="txt-pink"] a:visited,
.p-btn[p-btn-color="txt-pink"] a:hover {
  color:#eb5f73;
  background-color:#fff;
}

.ua-pc .p-btn[p-btn-color="txt-pink"]:hover,
.ua-pc .p-btn[p-btn-color="txt-pink"] a:hover,
.ua-pc a:hover .p-btn[p-btn-color="txt-pink"] {
  color:#F98697;
  background-color:#fff;
}

/* 矢印アイコン */
.p-btn[p-btn-color="txt-pink"] .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="txt-pink"]:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before,
.ua-pc .p-btn[p-btn-color="txt-pink"] a:hover .p-arrow:not([arrow="prev"]):not([arrow="down"]):before {
  border-color:transparent transparent transparent #eb5f73;
}

.p-btn[p-btn-color="txt-pink"] .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="txt-pink"]:hover .p-arrow[arrow="prev"]:before,
.ua-pc .p-btn[p-btn-color="txt-pink"] a:hover .p-arrow[arrow="prev"]:before {
  border-color:transparent #eb5f73 transparent transparent;
}

.p-btn[p-btn-color="txt-pink"] .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="txt-pink"]:hover .p-arrow[arrow="down"]:before,
.ua-pc .p-btn[p-btn-color="txt-pink"] a:hover .p-arrow[arrow="down"]:before {
  border-color:#eb5f73 transparent transparent transparent;
}


/*----------------------------------------------------------------------------------------------------

  Icon
  
----------------------------------------------------------------------------------------------------*/

.p-icon:before,
.p-icon[p-icon-ps="R"]:after {
  content:"";
  width:1em;
  height:1em;
  display:inline-block;
  background-position:center center;
  background-repeat:no-repeat;
  background-size:contain;
  vertical-align:middle;
  margin-bottom:0.2em;
}

.p-icon[p-icon-ps="R"]:before {
  display:none;
}

.p-icon--mgR:before,
.p-icon--mgR:after { margin-right:0.4rem; }
.p-icon--mgL:before,
.p-icon--mgL:after { margin-left:0.4rem; }

.p-icon--mgR-x2:before,
.p-icon--mgR-x2:after { margin-right:0.6em; }
.p-icon--mgL-x2:before,
.p-icon--mgL-x2:after { margin-left:0.6em; }

/* 左向き */
.p-icon[p-arrow="prev"]:before,
.p-icon[p-arrow="prev"]:after {
  -webkit-transform:scale(-1, 1);
  transform:scale(-1, 1);
}

/* 下向き */
.p-icon[p-arrow="down"]:before,
.p-icon[p-arrow="down"]:after {
  -webkit-transform:rotate(90deg);
  transform:rotate(90deg);
}

/* Map pin */
.p-icon[p-icon="mappin"]:before,
.p-icon[p-icon="mappin"]:after {
  background-image:url(../image/icon/mappin.svg);
}

/* TEL */
.p-icon[p-icon="tel"]:before,
.p-icon[p-icon="tel"]:after {
  width:0.7em;
  height:0.9em;
  background-image:url(../image/icon/tel.svg);
}

/* TEL */
.p-icon[p-icon="tel"][p-icon-color="green04"]:before,
.p-icon[p-icon="tel"][p-icon-color="green04"]:after {
  width:0.7em;
  height:0.9em;
  background-image:url("../image/icon/tel_green04.svg");
}

/* 矢印（緑円） */
.p-icon[p-icon="ar-green"]:before,
.p-icon[p-icon="ar-green"]:after {
  background-image:url(../image/icon/ar_green.svg);
}

/* 矢印（白円・線緑） */
.p-icon[p-icon="ar-green_on"]:before,
.p-icon[p-icon="ar-green_on"]:after {
  background-image:url(../image/icon/ar_green_on.svg);
}

/* download */
.p-icon[p-icon="dl"]:before,
.p-icon[p-icon="dl"]:after {
  width:1.2em;
  height:1.2em;
  background-image:url(../image/icon/dl.svg);
}

/* download（水色） */
.p-icon[p-icon="dl-blue"]:before,
.p-icon[p-icon="dl-blue"]:after {
  width:1.2em;
  height:1.2em;
  background-image:url(../image/icon/dl_blue.svg);
}

/*----------------------------------------------------------------------------------------------------

  
  
----------------------------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
  線無
--------------------------------------------------------------------------------*/

.p-arrow {
  width:1.2em;
  height:1.2em;
  display:inline-block;
  position:relative;
  vertical-align:middle;
}

.p-arrow:before {
  content:"";
  width:0;
  height:0;
  border-style:solid;
  display:inline-block;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
}

.p-arrow:not([arrow="prev"]):not([arrow="down"]):before {
  border-width:3px 0 3px 6px;
  border-color:transparent transparent transparent #fff;
}

.p-arrow[arrow="prev"]:before {
  border-width:3px 6px 3px 0;
  border-color:transparent #fff transparent transparent;
}

.p-arrow[arrow="down"]:before {
  border-width:6px 4px 0 4px;
  border-color:#fff transparent transparent transparent;
}



/*--------------------------------------------------------------------------------
  線有
--------------------------------------------------------------------------------*/

.p-lineArrow {
  width:2em;
  min-height:1em;
  display:inline-block;
  position:relative;
  vertical-align:baseline;
}

a.p-lineArrow--txt,
a.p-lineArrow--txt:visited,
a.p-lineArrow--txt:hover,
.p-lineArrow--txt a,
.p-lineArrow--txt a:visited,
.p-lineArrow--txt a:hover { color:inherit; text-decoration:none; }
.ua-pc a.p-lineArrow--txt:hover,
.ua-pc .p-lineArrow--txt a:hover { color:#2c4683; }

.p-lineArrow--txt .p-lineArrow { margin-bottom:0.25em; }
.p-lineArrow--txt .p-lineArrow:not([arrow="prev"]) { margin-left:0.5em; }
.p-lineArrow--txt .p-lineArrow[arrow="prev"] { margin-right:0.5em; }

.p-lineArrow:before,
.p-lineArrow:after {
  content:"";
}

.p-lineArrow:before {
  width:1.75em;
  height:1px;
  background-color:#0a1428;
  position:absolute;
  bottom:0;
}

.p-lineArrow:not([arrow="prev"]):before { right:0; }
.p-lineArrow[arrow="prev"]:before { left:0; }

.ua-pc .p-lineArrow:before {
  transition:width 0.4s cubic-bezier(.23, 1, .32, 1);
}
.ua-pc .p-lineArrow--txt:hover .p-lineArrow:before,
.ua-pc .p-lineArrow-link:hover .p-lineArrow:before,
.ua-pc .p-lineArrow--ic:hover.p-lineArrow:before {
  width:1.5em;
}

.p-lineArrow:after {
  width:0;
  height:0;
  border-style:solid;
  display:inline-block;
  position:absolute;
  bottom:0;
}

.p-lineArrow:not([arrow="prev"]):after {
  border-width:0.4rem 0 0 0.7rem;
  border-color:transparent transparent transparent #0a1428;
  right:-1px;
}

.p-lineArrow[arrow="prev"]:after {
  border-width:0.4rem 0.7rem 0 0;
  border-color:transparent #0a1428 transparent transparent;
  left:-1px;
}

.p-lineArrow--ic:before,
.p-lineArrow--ic:after {
  bottom:50%;
  margin-bottom:-0.2rem;
}


/*----------------------------------------------------------------------------------------------------

  新しいウインドウ Icon
  
----------------------------------------------------------------------------------------------------*/

.p-gLink:after {
  content:url(../image/icon/gLink.svg);
  display:inline-block;
  vertical-align:top;
  margin-left:0.3em;
  margin-right:0.3em;
  margin-top:-0.25em;
}


/*----------------------------------------------------------------------------------------------------

  List
  
----------------------------------------------------------------------------------------------------*/

.p-list--in { margin-left:2.2rem; }
.p-list--in li { line-height:1.5; }
.p-list--in li:not(:first-child) { margin-top:0.4em; }


/*--------------------------------------------------------------------------------
  マーク
--------------------------------------------------------------------------------*/

.p-listMk { list-style:none; }
.p-listMk li { line-height:1.5; padding-left:1.4em; }
.p-listMk li:not(:first-child) { margin-top:0.4em; }

.p-listMk li:before {
  margin-left:-1.4em;
  margin-right:0.4em;
  display:inline-block;
}

.p-listMk[p-list="maru"] li:before {
  content:"●";
  color:#12aaa5;
  font-size:0.8em;
}

.p-listMk[p-list="dot"] li:before {
  content:"・";
}

.p-listMk[p-list="check"] li:before {
  content:"";
  width:1em;
  height:1em;
  background:url(../image/icon/check.svg) no-repeat center center;
  background-size:contain;
}

/* No */
.p-listMk[p-list="no"] {
  counter-reset:s-number;
}

.p-listMk[p-list="no"] li {
  position:relative;
  counter-increment:s-number;
  padding-left:2em;
}

.p-listMk[p-list="no"] li:before {
  margin-left:0;
  margin-right:0;
  content:counter(s-number);
  font-weight:500;
  font-style:normal;
  text-align:center;
  position:absolute;
  left:0;
  top:0.1em;
  background-color:#12aaa5;
  color:#fff;
  line-height:1;
  width:1.7em;
  height:1.7em;
  line-height:1.7em;
  border-radius:100%;
  font-size:0.8em;
  z-index:2;
}


/*----------------------------------------------------------------------------------------------------

  波線
  
----------------------------------------------------------------------------------------------------*/

.p-namisen {
  color:#12aaa5;
  font-weight:500;
  margin:0 0.5rem;
  padding-bottom:1em;
  background:url(../image/pattern/namisen.svg?v=5) repeat-x left bottom 0.8em;
  background-size:auto 4px;
}

@media screen and (max-width:480px) {
  .p-namisen {
    background-size:auto 3px;
  }
}


/*----------------------------------------------------------------------------------------------------

  ページネーション
  
----------------------------------------------------------------------------------------------------*/

.p-pagination {
  text-align:center;
}

.p-pagination__list {
  list-style:none;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
}

.p-pagination__list li {
  padding:0 4px;
  line-height:1;
}

.p-pagination__list li:after {
  content:"";
  display:block;
  height:0;
  clear:both;
}

.p-pagination__list li a { display:block; }

.p-pagination__list li a,
.p-pagination__list li a:visited,
.p-pagination__list li a:hover { color:#12aaa5; text-decoration:none; }
.p-pagination__list li span.active { color:#fff; background-color:#12aaa5; }

.p-pagination__list li span {
  line-height:1;
  border-radius:4px;
  width:2em;
  height:2em;
  padding-top:0.4em;
  display:block;
  color:inherit;
  border:1px solid #12aaa5;
  box-sizing:border-box;
}

.ua-pc .p-pagination__list li a span {
  -webkit-transition:background ease 0.1s, border ease 0.1s, color ease 0.1s;
  transition:background ease 0.1s, border ease 0.1s, color ease 0.1s;
}

.ua-pc .p-pagination__list li a span:hover { background-color:#d0eeed; }

@media print,screen and (min-width:641px) {
  .p-pagination { padding-top:64px; }
}

@media screen and (max-width:640px) {
  .p-pagination { padding-top:2.25em; }
}


/*----------------------------------------------------------------------------------------------------

  ブログパターン
  
----------------------------------------------------------------------------------------------------*/

.p-glog {
  text-align:left;
  word-break:break-all;
}

.p-glog:after {
  content:"";
  display:block;
  height:0;
  clear:both;
}

.p-glog ul,
.p-glog ol {
  margin-left:1.2em;
}

.p-glog__img--left,
.p-glog__img--right {
  display:inline-block;
}
.p-glog__img--center {
  display:block;
  text-align:center;
}

.p-glog__img__cp {
  display:block;
  font-size:0.9em;
  line-height:1.5;
  color:#999;
  padding-top:0.8em;
  text-align:center;
}

.p-glog__datafile--left,
.p-glog__datafile--right,
.p-glog__datafile--center {
  padding-bottom:1em;
}
.p-glog__datafile--right {
  text-align:left;
}
.p-glog__datafile--right {
  text-align:right;
}
.p-glog__datafile--center {
  text-align:center;
}

.p-glog__datafile {
  display:inline-block;
  padding-top:0.5em;
  padding-bottom:0.5em;
}

@media print,screen and (min-width:641px) {
  .p-glog {
    padding-top:40px;
    line-height:2;
  }

  .p-glog__img--left {
    float:left;
    margin-right:2.5em;
  }
  
  .p-glog__img--right {
    float:right;
    margin-left:2.5em;
  }
  
  .p-glog__img--left,
  .p-glog__img--right {
    margin-bottom:1em;
  }
  
  .p-glog__img--center {
    padding-bottom:2em;
  }
}

@media screen and (max-width:640px) {
  .p-glog {
    padding-top:2em;
  }
  
  .p-glog__img--left {
    float:left;
    margin-right:1.25em;
  }
  
  .p-glog__img--right {
    float:right;
    margin-left:1.25em;
  }
  
  .p-glog__img--left,
  .p-glog__img--right {
    margin-bottom:1em;
    width:45% !important;
  }
  
  .p-glog__img--center {
    padding-bottom:1.5em;
  }
}

@media screen and (max-width:560px) {
  .p-glog__img--left,
  .p-glog__img--right {
    float:none;
    display:block;
    text-align:center;
    width:100% !important;
    max-width:100% !important;
    margin-bottom:1.5em;
    margin-left:0;
    margin-right:0;
  }

  .p-glog__img--left,
  .p-glog__img--right {
    max-width:400px;
    width:100% !important;
  }
}


/*--------------------------------------------------------------------------------
  非公開
--------------------------------------------------------------------------------*/

.private-alert {
  text-align:center;
  border:2px solid #f85660;
  background-color:#ffeeee;
  border-radius:10px;
  line-height:1.4;
  color:#eb3c46;
  padding:1.2em 1em;
}

.private-alert b {
  font-size:1.2em;
}

.private-alert small {
  display:inline-block;
  font-size:0.8em;
  line-height:1.4;
  margin-top:0.2em;
}

@media print,screen and (min-width:641px) {
  .private-alert {
    font-size:1.2em;
    margin-top:-18px;
    margin-bottom:48px;
  }
}

@media screen and (max-width:640px) {
  .private-alert {
    font-size:1.1em;
    margin-bottom:1.75em;
  }
}

@media screen and (max-width:560px) {
  .private-alert small {
    font-size:2.8vw;
  }
}

@media screen and (max-width:480px) {
  .private-alert {
    font-size:4vw;
  }
}

/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/
span.jp-ttl{
  display: block;	
  position: relative;
}

span.jp-ttl::after{
  position: absolute;
  content: "";
  width: 85px;
  height: 1px;
  background-color: #ddc5c5;
  top: 50%;
  transform: translateY(-50%);
}

@media print,screen and (min-width:641px) {
  span.jp-ttl::after{
    margin-left: 20px;
  }
}

@media print,screen and (max-width:640px) {
  span.jp-ttl::after{
    margin-left: 20px;
  }
}

/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/
.white-back{
  background-color: #fff;
}
/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/

.green-shadow{
  box-shadow: 0 10px 25px 0 rgba(112,204,105,0.1);
}
/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/
.green-grade{
  background: rgba(112,204,105,0.6);
  background: linear-gradient(135deg, rgba(112,204,105,0.6) 0%, rgba(110,187,171,0.6) 50%, rgba(107,170,237,0.6) 100%);
}

/*----------------------------------------------------------------------------------------------------

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

.pc-none{
  display: none;
}

@media print,screen and (max-width:780px) {
  .sp-none{
    display:none!important;
  }
	
  .pc-none{
    display: block!important;
  }
}

/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/
.line-hd {
  position: relative;
  padding: 1rem .5rem;
  font-family: 'Shippori Mincho', serif;
  font-weight: 700;
  text-align: center;
  background-color: #fff;
}

.line-hd:before,
.line-hd:after  {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background: linear-gradient(135deg, rgba(112,204,105,0.6) 0%, rgba(110,187,171,0.6) 50%, rgba(107,170,237,0.6) 100%);
}

.line-hd:before {
  top: 0;
}

.line-hd:after {
  bottom: 0;
}

/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/
.under-l-hd{
  position: relative;
  padding: 1rem 2rem;
  border-bottom: 2px solid rgba(107,170,237,0.8);
}

.under-l-hd:before {
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 20%;
  height: 2px;
  content: '';
  background: rgba(112,204,105,0.8);
}

/*----------------------------------------------------------------------------------------------------

 
  
----------------------------------------------------------------------------------------------------*/

.tag-hd{
  position: relative;
  padding: 1rem 2rem;
  text-align: center;
  border-top: 2px solid #6baaed;
  font-weight: 700;
}

.tag-hd::before {
  font-size: 15px;
  font-size: 1.5rem;
  position: absolute;
  top: -24px;
  left: -0px;
  height: 24px;
  padding: 0 1em;
  color: #fff;
  background: #6baaed;
  font-weight: 500;
}


/*----------------------------------------------------------------------------------------------------



----------------------------------------------------------------------------------------------------*/
  .annotation{
    display: block;
    padding-left: 1em;
    text-indent: -1em;
  }