@charset "utf-8";
/* CSS Document */
/*--------------------------------------------------------------------------
 reset
---------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6, p, span, small, dl, dt, dd, ol, ul, li {
 margin: 0;
 font-size: 100%;
}
ul {
 margin: 0;
 padding: 0;
 vertical-align: baseline;
}
img { vertical-align: top; }
li {
 list-style-type: none;
 vertical-align: baseline;
}
input, button, textarea, select {
 margin: 0;
 padding: 0;
 background: none;
 border: none;
 border-radius: 0;
 outline: none;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}
html { font-size: 62.5%; }
h1, h2, h3, h4, h5, h6, .catch {
 font-weight: bold;
 line-height: 1.4;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
 display: inline-block;
 background: url("img/ar_bk.svg") no-repeat right 50%;
 background-size: 14px auto;
 padding-right: 3rem;
 text-decoration: none;
}
@media all and (-ms-high-contrast:none) {
 body, #index .sec01 .subBox01 .catch_box .sub_catch, #index .sec02 .content .frame_wrap .frame .frame-head a, footer .areaInner .footBox .accChild li a, footer .areaInner .noticeArea p, footer .areaInner .noticeArea .botPrg {
  font-family: "ＭＳ ゴシック", "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif !important;
 }
 #index .sec07 .box_wrap .box .box-head .sttl a { padding: 6px 18px 0 0 !important; }
 #index .sec06 .frame_wrap .frame .frame-head a { padding: 13px 22px 15px 35px !important; }
 #index .sec06 .frame_wrap .frame .frame-head::before { margin-top: 4px; }
}
#index .sec06 .frame_wrap .frame .frame-head::before { margin-top: 1px; }
/*--------------------------------------
　Base
---------------------------------------*/
body {
 color: #000;
 font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 font-size: 1.6rem;
 line-height: 1.8;
 min-width: 1000px;
 word-break: break-word;
}
body * {
 box-sizing: border-box;
}
img {
 max-width: 100%;
 height: auto;
}
a {
 color: #000;
 text-decoration: underline;
}
@media screen and (min-width: 600px) {
 a:hover,a img:hover { opacity: 0.6; }
}
.fl { float: left; }
.fr { float: right; }
.f110 { font-size: 110%; }
.f120 { font-size: 120%; }
.f130 { font-size: 130%; }
.f150 { font-size: 150%; }
.f200 { font-size: 200%; }
.f300 { font-size: 300%; }
.wi1000 {
 width: 1000px;
 margin: 0 auto;
 padding: 10rem 0;
}
.dashed { border: 1px dashed #000; }
.sp { display: none; }
.sp_br { display: none; }
.auto { margin: 0 auto; }
p { margin: 1.5rem 0; }
span:not([class]) {
 color: #0759bc;
 font-weight: bold;
}
/* ================== */
/*header　*/
/* ================== */
header { border-top: 5px solid #0967d8; }
#headNoteArea { padding: 20px 0 10px; }
#headNoteArea .areaInner {
 display: flex;
 flex-direction: column-reverse;
 width: 1000px;
 margin: 0 auto;
 text-align: center;
}
#headNoteArea .sitename h1:before,
#headNoteArea .sitename a:before{
 content: "PR";
 display: inline-block;
 background: #000;
 color: #fff;
 text-align: center;
 width: 3rem;
 margin-right: 1rem;
 font-size: 1.4rem;
 line-height: 2rem;
}
#headNoteArea .sitename h1,
#headNoteArea .sitename a {
 text-decoration: none;
 font-size: 1.4rem;
 font-weight: bold;
 margin: 0 auto;
 line-height: 1.2;
 text-align: center;
}
#headNoteArea .logo {
 text-align: center;
 width: 44px;
 margin: 0 auto 10px;
}
/* ================== */
/*g-nav　*/
/* ================== */
#g-nav {
 margin: 0 auto;
 width: 1000px;
}
#g-nav ul {
 display: flex;
}
#g-nav ul li {
 display: flex;
 align-items: stretch;
 justify-content: center;
 flex-grow: 1;
 width: 20%;
 position: relative;
}
#g-nav ul li:after {
 content: "";
 width: 1px;
 height: 20px;
 display: inline-block;
 border-left: 2px solid #c1c5cf;
 position: absolute;
 top: calc(50% - 10px);
 left: 0;
}
#g-nav ul li:first-child::after { content: none; }
#g-nav li a {
 text-decoration: none;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 1.3rem;
 line-height: 18px;
 padding: 13px 10px;
 position: relative;
 text-align: center;
 width: 100%;
}
#g-nav li a:hover {
 color: #2260d6;
 opacity: 1;
}
/*--------------------------------------
　Pankuzu
---------------------------------------*/
#pankuzu {
 font-size: 1.2rem;
 font-weight: bold;
 margin: 0 auto;
 padding: 14px 0 40px;
}
#pankuzu a { text-decoration: none; }
#pankuzu span {
 font-size: inherit;
 color: inherit;
}
@media screen and (min-width: 600px) {
 #pankuzu { width: 1000px; }
 #pankuzu a:hover { text-decoration: underline; }
}
/*--------------------------------------
 Main Contents
---------------------------------------*/
#contents {
 margin: 0 auto;
 padding: 0;
}
#index, #category, #page {
 margin: 0;
 padding: 0;
}
#category, #page {
 width: 1000px;
 margin: 0 auto;
}
#category .baseBox, #page .baseBox {
 width: 760px;
 float: left;
 margin-bottom: 13rem;
}
/*--------------------------------------
 Side
---------------------------------------*/
#side {
 box-sizing: border-box;
 float: right;
 margin: 0 0 60px;
 width: 220px;
}
#side .sideBox {
 box-sizing: border-box;
 margin: 0 auto 30px;
 width: 200px;
}
#side .sideBox a {
 line-height: 1.6;
}
#side .sideBox .sttl {
 box-sizing: border-box;
 position: relative;
 overflow: hidden;
}
#side .sideBox .sttl a {
 text-decoration: none;
 background: #f5f5f5;
 font-size: 1.5rem;
 display: block;
 height: 100%;
 line-height: 1.4;
 padding: 20px 10px 20px;
 position: relative;
}
#side .sideBox .sttl a:after {
 content: "";
 border-top: 9px solid transparent;
 border-right: 9px solid #ed8600;
 border-bottom: 9px solid transparent;
 position: absolute;
 bottom: -2px;
 right: 2px;
 width: 0;
 height: 0;
 transform: rotate(-135deg);
}
#side .sideBox .mainList { display: none; }
#side .sideBox li::before { content: none; }
#side .sideBox li {
 border-bottom: 1px dashed #d8d8d8;
 margin: 0;
 padding: 0;
}
#side .sideBox li:last-child {
 border: none;
}
#side .sideBox li a {
 background: #f3f4f6 url("img/ar_bk.svg") no-repeat right 10px center;
 background-size: 10px auto;
 display: block;
 font-size: 1.3rem;
 padding: 20px 25px 20px 10px;
}
#side .sideBox .subList {
 border-top: 1px dashed #d8d8d8;
 margin: 0;
}
#side .sideBox .subList li {
 background: none;
 margin: 0;
}
#side .sideBox .subList li:last-child {
 background: none;
}
#side .sideBox .subList li a {
 background: url(img/side_sub_list.png) no-repeat left 15px top 13px, url("img/ar_bk.svg") no-repeat right 10px center;
 background-color: #f3f4f6;
 background-size: 8px auto , 10px auto;
 display: block;
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 padding: 15px 30px;
}
/*--------------------------------------
　PageTop
---------------------------------------*/
#page-top {
 position: fixed;
 bottom: 30px;
 right: 20px;
 z-index: 2;
 width: 60px;
}
/*--------------------------------------
Footer
---------------------------------------*/
footer {
 background: #e4edf8;
}
footer a {
 text-decoration: none;
}
footer .areaInner {
 width: 1000px;
 margin: 0 auto;
 padding: 40px 0 0 0;
}
footer .areaInner .footBox {
 margin: 0 0 30px 0;
}
footer .areaInner .footBox .sttl {
 border-bottom: 1px solid #444;
 padding-bottom: 8px;
 margin-bottom: 16px;
}
footer .areaInner .footBox .sttl a {
 color: #001842;
 font-size: 1.6rem;
 font-weight: bold;
 padding-left: 10px;
}
footer .footBox ul {
 display: flex;
 flex-wrap: wrap;
 padding: 0 20px;
}
footer .areaInner .footBox .accChild {
 padding: 0 0 0 15px;
 box-sizing: border-box;
 width: 100%;
}
footer .areaInner .footBox .accChild li.subCat {
 margin: 0 30px 0 0;
 padding: 0;
}
footer .areaInner .footBox .accChild .subList li:last-child:after {
 content: none;
}
footer .areaInner .footBox .accChild li {
 margin: 0 20px 0 0;
}
footer .areaInner .footBox .accChild li a {
 background: url("img/footer_arr.png") no-repeat left center;
 color: #444;
 font-size: 1.3rem;
 font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 padding: 0 0 0 16px;
}
footer .areaInner .footBox .accChild .subList {
 display: block;
 ;
 margin: 0 0 0 20px;
 padding: 0;
}
footer .areaInner .footBox .accChild .subList li {
 display: block;
 margin: 0;
 padding: 0;
}
footer .areaInner .footBox .accChild .subList li a {
 background: none;
 font-size: 1.3rem;
 padding: 0 15px 0 5px;
 position: relative;
}
footer .areaInner .footBox .accChild .subList li::before {
 content: "┖";
 color: #444;
 letter-spacing: 0;
}
footer .areaInner .noticeArea {
 box-sizing: border-box;
 color: #444;
 margin: 60px auto 35px;
 width: 71%;
}
footer .areaInner .noticeArea p {
 background: #FFF;
 font-size: 1.2rem;
 font-weight: bold;
 font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 margin: 0;
 padding: 25px 30px 30px;
}
footer .areaInner .noticeArea .botPrg {
 background: transparent;
 font-size: 1.2rem;
 font-weight: bold;
 font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 text-align: center;
 padding: 10px 0 0;
}
footer .botArea {
 background: #0967d8;
 padding: 15px 0;
}
footer .botArea .botInner {
 width: 1000px;
 margin: 0 auto;
 position: relative;
}
footer .botArea .botInner .smap {
 float: right;
}
footer .botArea .botInner .smap a {
 font-size: 1.3rem;
 color: #fff;
 padding: 0 0 0 20px;
}
footer .botArea .botInner .smap a:hover {
 text-decoration: underline;
}
footer p.copy {
 color: #fff;
 font-size: 1.2rem;
 float: left;
 margin: 0;
}
footer p.copy a {
 color: #fff;
}
footer .areaInner .footBox .accChild .sp {
 display: none;
}
/* ================== */
/*メインコンテンツ　*/
/* ================== */
#index .titLArea, #category .titLArea, #page .titLArea {
 text-align: center;
 position: relative;
}
#category h1, #page h1 {
 font-size: 3.6rem;
 margin: 0 0 8rem;
 line-height: 1.4;
 padding: 1.5rem 1rem;
 position: relative;
 text-align: center;
 background: url("img/h2_bg.png") no-repeat center 50%;
}
#category h1::after,
#page h1::after {
 content: "";
 display: block;
 background-color: #4174da;
 position: absolute;
 bottom: -4rem;
 left: 50%;
 margin-left: -53px;
 height: 1px;
 width: 106px;
}
#category h2:not([class]), #page h2:not([class]) {
 background: #f4f7f8 url("img/icon_book.svg") no-repeat left 20px top 18px /26px auto;
 font-size: 2.8rem;
 font-weight: bold;
 margin: 70px 0 20px;
 padding: 1.8rem;
 padding-left: 7.7rem;
}
#category h3:not([class]),
#page h3:not([class]) {
 border-bottom: 1px solid #4174da;
 font-size: 2.4rem;
 font-weight: bold;
 padding: 13px 40px;
 margin: 50px 0 2rem;
 position: relative;
}
#category h3:not([class])::before,
#page h3:not([class])::before {
 content: "";
 display: block;
 width: 5px;
 height: 100%;
 background:linear-gradient(#3c97d6 0%, #2260d6 100%);
 position: absolute;
 left: 0;
 top: 0;
}
#index h5:not([class]),#category h4:not([class]), #page h4:not([class]) {
 font-size: 2.2rem;
 font-weight: bold;
 margin: 50px 0 10px;
 padding: 8px 23px;
 border-bottom: #006894 dashed 1px;
}
#contents ul:not([class]) li {
 margin: 0 0 5px;
 padding-left: 22px;
 position: relative;
}
#contents ul:not([class]) li::before {
 content: "";
 background: #2260d6;
 width: 12px;
 height: 12px;
 border-radius: 100%;
 position: absolute;
 left: 0;
 top: 8px;
}
ol:not([class]) {
 margin: 0;
 padding: 0;
}
ol:not([class]) li {
 counter-increment: number;
 display: block;
 list-style: none;
 margin: 0 0 5px;
 padding: 0 0 0 25px;
 position: relative;
}
ol:not([class]) li::before {
 background: #2260d6;
 color: #fff;
 content: counter(number);
 display: block;
 font-size: 14px;
 font-weight: normal;
 height: 19px;
 left: 0;
 line-height: 19px;
 position: absolute;
 text-align: center;
 top: 4px;
 width: 19px;
}
/*--------------------------------------
　table
---------------------------------------*/
#contents table {
 width: 100%;
 margin: 30px auto 30px;
 word-break: break-all;
}
#contents table th {
 background: #f5f5f5;
 border: 1px solid #bfbfbf;
 font-weight: normal;
 padding: 14px 12px 14px 16px;
 text-align: center;
 width: 190px;
}
#contents table td {
 line-height: 2.2rem;
 padding: 14px 20px;
 border: 1px solid #bfbfbf;
 background: #fff;
 font-size: 1.3rem;
 width: 190px;
}
/*--------------------------------------
　float img
---------------------------------------*/
.float-wrap {
 box-sizing: border-box;
 margin: 30px 0 30px;
}
.float-wrap img {
 width: 100%;
}
.float-wrap p {
 margin: 0;
 padding: 0;
 position: relative;
 top: -6px;
}
.float-wrap .fl {
 padding: 0 40px 10px 0;
 text-align: center;
 width: 340px;
}
.float-wrap .fr {
 padding: 0 0 10px 40px;
 text-align: center;
 width: 340px;
}
.float-wrap .center {
 margin: 0 auto;
 padding: 0 0 20px;
 text-align: center;
 width: 340px;
}
.caption {
 color: #9c9c9c;
 font-size: 1.0rem;
 line-height: 1.4;
 margin: 12px 0 0;
 word-break: break-all;
}
.caption a {
 color: inherit;
}
/*--------------------------------------
　btn
---------------------------------------*/
.btn-tel { display: none; }
.btn-internal, .btn-web {
 width: 409px;
 max-width: 90%;
 margin: 2rem auto;
}
.btn-internal a,
.btn-web a {
 background: #01b5d5;
 border-radius: 1000px;
 color: #fff;
 font-size: 1.8rem;
 line-height: 1.4;
 font-weight: bold;
 padding: 12px 17%;
 text-align: center;
 text-decoration: none;
 box-shadow: 4px 8px 4px -5px rgb(201, 201, 201);
 display: flex;
 width: 100%;
 align-items: center;
 justify-content: center;
 min-height: 100px;
 position: relative;
}
.btn-internal a::before,
.btn-web a::before {
 content: "";
 width: 13px;
 height: 11px;
 background: url("img/ar_wh.svg") no-repeat center top / 100% auto;
 position: absolute;
 right: 5.5%;
 top: 50%;
 transform: translate(0%, -50%);
}
.btn-web a {
 background-color: #eb761c;
}
.btn-link {
 margin: 20px 0;
 text-align: right;
}
.btn-link a {
 background: url("img/ar_bl.svg")no-repeat left 50%;
 background-size: 16px auto;
 color: #333;
 font-size: 1.7rem;
 font-weight: bold;
 line-height: 1.3;
 padding: 4px 0 4px 32px;
 text-decoration: underline;
}
@media screen and (min-width: 600px) {
 .btn-link a:hover { text-decoration: none; }
}
/*--------------------------------------
　box-wrap
---------------------------------------*/
.box-wrap {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
.box-wrap .box {
 background: #f5f5f5;
 margin: 3rem 0 7rem;
 position: relative;
 width: calc((100% - 6.4%)/2);
 padding: 3.8rem 2rem 2rem;
}
.box-wrap .box::before {
 content: "";
 display: block;
 width: 68px;
 height: 68px;
 background: url("img/icon_box.png") no-repeat center top / 100% auto;
 position: absolute;
 top: -30px;
 left: 50%;
 transform: translate(-50%, 0);
 z-index: 1;
}
.box-wrap .box .box-head {
 padding: 1rem 0;
 margin: 0 0 1rem;
 display: flex;
 justify-content: center;
 align-items: center;
 text-align: center;
 width: 100%;
}
.box-wrap .box .box-head .sttl {
 width: 100%;
 font-size: 2.0rem;
 line-height: 1.4;
 text-align: center;
 font-weight: bold;
}
.box-wrap .box .box-head .sttl a {
 width: 100%;
 padding-right: 3rem;
 background: url("img/ar_bl.svg") no-repeat right 50%;
 background-size: 15px auto;
 text-decoration: none;
}
.box-wrap .box .box-body .frame {
 width: 100%;
 text-align: center;
}
/* frame-wrap */
.frame-wrap {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
.frame-wrap::after {
 content: "";
 width: 30%;
 height: 0;
}
.frame-wrap .frame {
 width:calc((100% - 40px)/3);
 margin: 20px 0;
 background-color: #fff;
 box-shadow: 0px 0px 8px 0px rgba(201, 201, 201, 0.5);
 border-top: solid 4px #4174da;
 padding: 0 2rem 2rem;
}
.frame-wrap .frame .frame-head {
 padding: 2rem 0;
 display: flex;
 align-items: center;
 justify-content: center;
 width: 100%;
 position: relative;
 margin: 0 0 2rem;
}
.frame-wrap .frame .frame-head::before {
 content: "";
 width: 58px;
 height: 2px;
 background-color: #4174da;
 position: absolute;
 bottom: 0;
 left: 50%;
 transform: translate(-50%, 0%);
}
.frame-wrap .frame .frame-head .sttl {
 width: 100%;
 font-size: 2rem;
 line-height: 1.4;
 font-weight: bold;
 text-align: center;
}
.frame-wrap .frame .frame-head .sttl a {
 width: 100%;
 display: inline-block;
 padding: 0 2.2rem;
 background: url("img/ar_bl.svg") no-repeat right 50%;
 background-size: 14px auto;
 text-decoration: none;
}
#contents .frame-wrap .frame table th,
#contents .frame-wrap .frame table td {
 width: auto;
 padding: 1rem 0.8rem;
 font-size: 1.4rem;
}
/* 共通パーツ lower-bottom
----------------------------------------*/
.lower-bottom p {
  padding: 1.5rem 0;
  margin: 0;
}
.lower-bottom {
  background: #eef3fb;
}
.lower-bottom .selection {
 margin: 0 auto;
 max-width: 1000px;
}
#index .selection {
 margin: 0 auto;
 width: 1000px;
}
.selectionTitle {
 font-size: 3.6rem;
 font-weight: bold;
 margin: 0 0 4rem;
 line-height: 1.4;
 padding: 4rem 0;
 text-align: center;
 background: url(img/h2_bg.png) no-repeat center 50%;
 background-size: 100% 60%;
 position: relative; 
}
.lower-bottom .selectionTitle {
 background: unset;
}
.selectionTitle span.small {
 display: block;
 width: 100%;
 text-align: center;
 font-size:2rem;
 line-height: 1.2;
 color: #4174da;
 font-weight: bold;
 margin: 0 0 4rem;
 position: absolute;
 top: 0;
 left: 0;
}
.selectionTitle::before {
 content: "";
 display: block;
 width: 106px;
 height: 1px;
 background-color: #4174da;
 position: absolute;
 bottom: 0;
 left: 50%;
 transform: translate(-50%, 0%);
}
.selectionBoxWrap {
 display: flex;
 justify-content: space-between;
 margin: 4rem 0 0;
}
.selectionBox {
 box-sizing: border-box;
 width: 32%;
 background-color:#fff;
 border: solid 3px #2260d6;
 padding: 2rem 1.2rem 1rem;
}
.selectionBox .selectionBoxInner {
}
.selectionBox span:not([class]) {
 font-size: inherit;
}
.selectionBox .selectionBoxList {
 background: url("img/selection_bg.png") no-repeat center bottom / 90% auto;
 margin: 0 auto 2rem;
}
.selectionBox .selectionBoxList li {
 padding-left: 2rem;
 line-height: 1.6;
 margin-bottom: 1rem;
 position: relative;
}
.selectionBox .selectionBoxList li::before {
 content: "";
 display: block;
 width: 12px;
 height: 12px;
 background-color: #2260d6;
 border-radius: 100%;
 position: absolute;
 left: 0;
 top: 4px;
}
.selectionBox .selectionBoxHeader {
 background-color: #e4f7f8;
 text-align: center;
 line-height: 1.4;
 padding: 1.8rem 1rem;
 margin: 0 0 2rem;
}
.selectionBox .selectionBoxHeader .catch {
 font-weight: bold;
 color: #4174da;
 padding-bottom: 0.5rem;
 font-size: 2rem;
}
#page .selectionBox .selectionBoxHeader .catch {
 font-size: 1.6rem;
}
.selectionBox .selectionBoxHeader .title {
 font-size: 2rem;
 font-weight: bold;
}
.selectionBox .selectionBoxPhoto { text-align: center; }
.selectionBox .selectionBoxCertification { margin: 2rem 0 0; }
.selectionBox .selectionBoxCertification dt {
 font-size: 1.8rem;
 font-weight: bold;
}
.selectionBox .selectionBoxCertification dt::before {
 content: "";
 display: inline-block;
 width: 12px;
 height: 12px;
 border-radius: 100%;
 background-color: #2260d6;
 margin: 0 8px 0 0;
}
.selectionBox .selectionBoxTag {
 margin: 20px 0 0;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
.selectionBox .selectionBoxTag li {
 box-sizing: border-box;
 width: 49%;
 margin: 0 0 6px;
 background-color: #dfeaf0;
 border-radius: 3px;
 display: flex;
 justify-content: center;
 align-items: center;
 color: #3f9fda;
 font-size: 1.4rem;
 line-height: 1.3;
 font-weight: bold;
 text-align: center;
 padding: 1rem 0;
}
.selectionBox div[class^="btn"] a {
 font-size: 1.6rem;
 padding: 12px 12%;
}
#index .selectionBox .btn-internal a::before {
 transform: translateY(-50%) rotate(90deg);
}
.selection .notes {
 color: #9c9c9c;
 font-size: 1.2rem;
 line-height: 1.6;
}
/* accordion */
.btn-accordion {
 width: 409px;
 margin: 2rem auto;
 background: #eaf0f4;
 border-radius: 1000px;
 position: relative;
 text-align: center;
 z-index: 1;
 padding: 2.3rem 3.0rem;
 cursor: pointer;
 box-shadow: 4px 8px 4px -5px rgba(201, 201, 201,1);
}
.btn-accordion span:not([class]) {
 display: block;
 text-align: center;
 color: #040303;
 line-height: 1.3;
 font-size: 1.8rem;
 font-weight: bold;
}
.btn-accordion::after {
 content: "";
 display: block;
 width: 22px;
 height: 22px;
 background: url("./img/ico_plus.png") left 50% no-repeat;
 background-size: 100% auto;
 position: absolute;
 right:28px;
 top: 50%;
 margin-top: -11px;
}
@media screen and (min-width: 600px) {
 .btn-accordion:hover { box-shadow: none; }
}
.btn-accordion.is-open span:not([class]) { display: none; }
.btn-accordion.is-open:after { background-image: url("img/ico_minus.png") ; }
.btn-accordion.is-open:before {
 content: '閉じる';
 width: 100%;
 display: block;
 text-align: center;
 color: #040303;
 line-height: 1.3;
 font-size: 1.8rem;
 font-weight: bold;
}
#page.sitemap {
 width: 1000px;
 margin: 0 auto;
}
#page.sitemap h2 a {
 color: #444;
}
#page.sitemap li a:hover {
 text-decoration: underline;
}
/*--------------------------------------
    TOP
---------------------------------------*/
#index .inner {
 margin: 0 auto;
 width: 1000px;
}
#index > .wi1000 {
 padding: 6rem 0;
}
.intro {
 padding: 0 5.5%;
}
#index h2:not([class]) {
 font-size: 3.6rem;
 font-weight: bold;
 margin: 0 0 4rem;
 line-height: 1.4;
 padding: 4rem 0;
 text-align: center;
 background: url(img/h2_bg.png) no-repeat center 50%;
 position: relative;
 background-size: 100% 60%;
}
#index h2:not([class]) span.small {
 display: block;
 width: 100%;
 text-align: center;
 font-size: 2rem;
 line-height: 1.2;
 color: #4174da;
 font-weight: bold;
 margin: 0 0 4rem;
 position: absolute;
 top: 0;
 left: 0;
}
#index h2:not([class])::before {
 content: "";
 display: block;
 width: 106px;
 height: 1px;
 background-color: #4174da;
 position: absolute;
 bottom: 0;
 left: 50%;
 transform: translate(-50%, 0%);
}
#index h3:not([class]) {
 background: #f4f7f8 url(img/icon_book.svg) no-repeat left 20px top 18px /26px auto;
 font-size: 2.4rem;
 font-weight: bold;
 margin: 8rem 0 2rem;
 padding: 1.8rem;
 padding-left: 6.6rem;
}
/* mv
----------------------------------------------------*/
.mv {
 background: url(img/mv.jpg) no-repeat center 50%;
 background-size: cover;
}
.mv .inner {
 width: 1000px;
 margin: 0 auto;
 padding: 4.8rem 0 6rem;
}
.mv .inner .mv_box {
 width: 640px;
}
.mv .mv_box .mainTit {
 font-size: 40px;
 line-height: 1.5;
 margin-bottom: 3rem;
}
.mv .mv_box .mainTit .bg {
 display: inline-block;
 color: #fff;
 background-color: #ed7300;
}
.mv .btn-internal {
 margin:3rem auto 0 0;
}
.mv .btn-internal a::before {
 transform: translateY(-50%) rotate(90deg);
}
/* mokuji
----------------------------------------------------*/
#index .mokuji.wi1000 {
 padding-bottom: 0;
}
.mokuji .toc_parts {
 width:800px;
 margin: 0 auto;
}

/* sec01
----------------------------------------------------*/
#index .sec01 .clinic {
 background: #eef9ff;
 border-top:solid 10px #4174da; 
 margin: 40px auto 0;
}
#index .sec01 .clinic + .clinic {
 margin-top: 120px;
}
#index .sec01 .clinic .inner {
 padding: 4rem 5rem;
}
#index .sec01 .clinic .btn-web {
 margin-top: 6rem;
}
#index .sec01 .clinic .clinic_name_box .catch {
 font-size: 2.5rem;
 line-height: 1.4;
 color: #2260d6;
 min-height: 62px;
 display: flex;
 align-items: center;
 justify-content: center;
 position: relative;
 z-index: 1;
}
#index .sec01 .clinic .clinic_name_box .catch::before {
 content: "";
 display: block;
 width: 62px;
 height: 62px;
 position: absolute;
 margin: auto;
 z-index: -1;
 background-size: 60px auto;
}
#index .sec01 .clinic .clinic_name_box .clinic_name {
 font-size: 3.5rem;
 line-height: 1.4;
 text-align: center;
}
#index .sec01 .clinic .clinic_detail {
 border-top:#4174da solid 1px; 
 border-bottom:#4174da solid 1px; 
 padding: 2rem 0;
 margin: 4rem 0 0;
}
#index .sec01 .clinic .clinic_detail .detail .tag {
 display: flex;
 justify-content: center;
}
#index .sec01 .clinic .clinic_detail .detail .tag li {
 display: flex;
 align-items: center;
 justify-content: center;
 margin: 0 0.9rem;
 background: #dfeaf0;
 border-radius: 3px;
 color: #3f9fd6;
 font-size: 1.4rem;
 font-weight: bold;
 line-height: 1.3;
 width: 135px;
 height: 59px;
}
#index .sec01 .clinic .clinic_pho {
 margin: 4rem auto 0;
 text-align: center;
 width: 50%;
}
/* subBox */
#index .sec01 .subBox01 {
 margin: 4rem auto 6rem;
 background-color: #e2effe;
 padding: 5.3rem 6rem 4rem;
}
#index .sec01 .subBox01 .catch {
 min-height: 70px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: url("img/icon_light.png") no-repeat center top;
 background-size: 70px auto;
 font-size: 2.4rem;
 line-height: 1.3;
}
#index .sec01 .subBox01 .catch_box .sub_catch {
 margin: 4rem 0 0;
 font-size: 1.8rem;
 line-height: 1.4;
 font-weight: bold;
 background: url("img/icon_book.svg") no-repeat left top / 19px auto;
 padding-left: 2.5rem;
}
#index .sec01 .subBox01 .catch_box .sub_catch .bg {
 background:linear-gradient(transparent 60%, #f5a37d 0%);
}
/* blueBox */
#index .sec01 .blueBox {
 margin: 6rem auto 0;
 box-shadow: 0px 0px 7px 0px rgba(119, 119, 119, 0.38);
 border: solid 5px #2260d6;
 padding: 4rem;
 background-color: #fff;
}
#index .sec01 .blueBox .subBox .upper {
 margin: 0 0 40px;
}
#index .sec01 .blueBox .subBox .txtArea .sTit {
 border-bottom: 1px solid #4174da;
 font-size: 2.4rem;
 line-height: 1.4;
 padding: 0 0 15px;
 text-align: center;
 margin: 0 auto 2rem;
}
#index .sec01 .blueBox .subBox .txtArea ul {
 padding: 0;
 margin: 0;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 font-size: 1.4rem;
 line-height: 1.4;
}
#index .sec01 .blueBox .subBox .txtArea ul li {
 width: 33%;
 padding-right: 3%;
 margin-top: 0.6rem;
}
#index .sec01 .blueBox .subBox .txtArea ul li::before {
 top: 5px;
}
#index .sec01 .blueBox .subBox .pointArea {
 background: #f5f5f5;
 padding: 0 30px 20px;
 position: relative;
 margin: 60px 0 0;
}
#index .sec01 .blueBox .subBox .pointArea .pointTitle {
 display:table;
 background-color: #5eaad6;
 min-width: 272px;
 max-width: 80%;
 line-height: 1.2;
 font-size: 2rem;
 color: #fff;
 text-align: center;
 border-radius: 1000px;
 padding: 5px 3rem;
 margin: 0 auto;
 transform: translateY(-17px);
}
#index .sec01 .blueBox .subBox .pointArea p {
 margin: 0;
}
#index .sec01 .information_title {
 border-bottom: 1px solid #006894;
 font-size: 27px;
 padding: 0 16px 16px;
 text-align: center;
 margin: 8rem 0 3rem;
}
/* sec02
----------------------------------------------------*/
#index .sec02 p {
 padding: 0 5.5%;
}
/* sec03
----------------------------------------------------*/
.sec03 .float-wrap .fl,
.sec03 .float-wrap .fr {
 width: 325px;
}
/* sec04
----------------------------------------------------*/
.sec04 .frame-wrap {
 padding: 0 5.5%;
}
#contents .sec04 .frame-wrap .frame table th {
 width: 90px;
}
/* sec05
----------------------------------------------------*/
#index .sec05 {
 padding: 60px 0 60px 50px;
 position: relative;
}
#index .sec05::before {
 content: "";
 width: 80vw;
 height: 100%;
 background-image: -moz-linear-gradient( 90deg, rgb(218,232,253) 0%, rgb(235,247,254) 100%);
 background-image: -webkit-linear-gradient( 90deg, rgb(218,232,253) 0%, rgb(235,247,254) 100%);
 background-image: -ms-linear-gradient( 90deg, rgb(218,232,253) 0%, rgb(235,247,254) 100%);
 position: absolute;
 left: 50%;
 margin-left: -50vw;
 top: 0;
 z-index: -1;
}
#index .sec05 .content {
 display: flex;
 justify-content: space-between;
 align-items: center;
}
#index .sec05 .feature { width: 570px; }
#index .sec05 .feature .title {
 margin-bottom: 30px;
 position: relative;
}
#index .sec05 .feature .title::after {
 content: "";
 display: block;
 border-bottom: 2px solid #4174da;
 position: absolute;
 left: 0;
 bottom: 0;
 height: 2px;
 width: 61%;
}
#index .sec05 .feature .title div:first-child {
 background: #4174da;
 color: #fff;
 font-size: 2.3rem;
 line-height: 35px;
 font-weight: bold;
 margin: 0;
 text-align: center;
 width: 109px;
}
#index .sec05 .feature .title h2 {
 background: none;
 margin: 0;
 text-align: left;
 padding: 2rem 0;
 font-size: 2.7rem;
 font-weight: bold;
 position: relative;
}
#index .sec05 .feature .title h2::after { content: none; }
#index .sec05 .feature .title h2 a {
 padding:0 2rem 0 0;
 background-image: url("img/ar_bl.svg");
}
#index .sec05 .feature .txt {
 font-size: 1.5rem;
 line-height: 26px;
 margin-bottom: 40px;
}
#index .sec05 .feature .btn-internal { margin: 20px auto 0 0; }
#index .sec05 .feature_img_wrap { text-align: center; }
#index .sec05 .feature_img { width: 400px; }
#index .sec05 .feature_img_wrap .caption {
 font-size: 1.2rem;
 text-align: center;
 margin: 0 5rem;
}
/* sec06
----------------------------------------------------*/
.sec06 .frame-wrap {
 padding: 0 5.5%;
}
/* sec07
----------------------------------------------------*/
/* sec08
----------------------------------------------------*/
.sec08 .box-wrap {
 padding: 0 5.5%;
}
.sec08 .box-wrap .box:nth-child(3),
.sec08 .box-wrap .box:nth-child(4) {
 margin-bottom: 0;
}
/*--------------------------------------
 toc_parts
---------------------------------------*/
.toc_parts {
 background: #eaf0f4;
 padding: 4rem 5rem;
}
.toc_parts .ttl {
 padding: 0 0 0 1rem;
 font-size: 2rem;
 font-weight: bold;
 border-left: 4px solid #4174da;
}
#toc {
 margin: 1.5rem 0 0 0;
 padding: 0 2rem 0;
 border-top: 1px solid #4174da;
}
#toc .chapter {
 margin: 0 0 2rem;
  counter-reset: count;
}
#toc .chapter .chapter-h {
 margin: 2rem 0 0;
 padding: 0 0 0 3.5rem;
 font-size: 1.6rem;
 line-height: 1.8;
 position: relative;
 counter-increment: count;
 background: none;
}
#toc .chapter .chapter-h:first-child {
 display: none;
}
#toc .chapter .chapter-h:last-child {
 margin-bottom: 0;
}
#toc ul.chapter .chapter-h::before {
 content: counter(count, decimal-leading-zero);
 position: absolute;
 top: 14px;
 left: 0;
 transform: translate(0,-50%);
 color: #333333;
 font-size: 2rem;
 font-weight: bold;
 background: none;
 width: auto;
 height: auto;
  border-radius: 0;
}
#toc .chapter .chapter-h a {
 font-weight: bold;
 text-decoration: none;
}
#toc .chapter .chapter-h span {
 color: #0b072b;
 font-weight: bold;
}
#toc li.chapter-h.chapter-h-three {
 display: none;
 margin: 1rem 0 1rem 4rem;
 padding: 0 0 0 1.5rem;
 counter-increment: none;
}
#toc li.chapter-h.chapter-h-three::before {
 content: "";
 position: absolute;
 top: 8px;
 left: 0;
 width: 8px;
 height: 8px;
 border-top: solid 1px #0b072b;
 border-right: solid 1px #0b072b;
 -webkit-transform: rotate(180deg);
 transform: rotate(180deg);
}
#toc li.chapter-h.chapter-h-three a {
 font-weight: 400;
}
#toc li.chapter-h.chapter-h-three span {
 font-weight: 400;
}
#toc .chapter br {
 display:none;
}
/* -------------------------------------------------------------------------
    SP
  ------------------------------------------------------------------------- */
@media screen and (max-width: 599px) {
 body {
  font-size: 1.4rem;
  line-height: 1.7;
  width: 100%;
  min-width: 100%;
 }
 .pc { display: none; }
 .pc_br { display: none; }
 .sp {  display: block; }
 .sp_br {  display: block; }
 img { max-width: 100%; }
 p { margin: 10px 0; }
 .wi1000 {
  width: 100%;
  margin: 0 auto;
  padding: 2rem;
 }
 .baseBox { padding: 0 2rem; }
 #category, #page {
  width: 100%;
  margin: 0 auto;
 }
 #category .baseBox, #page .baseBox {
  width: 100%;
  float: none;
 }
 /* ==================================== */
 /*header*/
 /* ==================================== */
 header {
  border-width: 4px;
  position: relative;
  width: 100%;
 }
 #headNoteArea {
  width:calc(100% - 59px);
  padding: 2rem 0 6px 1rem;
 }
 #headNoteArea .areaInner {
  line-height: 2rem;
  margin: 0 auto;
  padding: 0;
  width: 100%;
 }
 #headNoteArea .sitename h1 {
  font-size: 1.4rem;
 }
 #headNoteArea .sitename a {
  display: block;
  font-size: 1.4rem;
  padding: 0 1rem 10px 1rem;
  text-align: center;
 }
 /* ハンバーガーメニュー */
 .out-frame {
  position: relative;
  width: 100%;
 }
 .menu-btn {
  display: block;
  position: absolute;
  top: 18px;
  right: 12px;
  height: 35px;
  width: 35px;
  z-index: 10;
 }
 .navOpenOut {
  background: rgba(255, 255, 255, 0.5);
  padding: 22px 13px 20px;
  box-sizing: border-box;
  height: 77px;
 }
 .navOpen {
  background: url(img/sp-btn-menu_off.png) 0 0 no-repeat;
  background-size: 35px;
  position: inherit;
  top: inherit;
  right: 14px;
  height: 35px;
  width: 35px;
  z-index: 10;
  float: right;
 }
 .navOpen img { opacity: 0; }
 #sp_titArea .is-fixed {
  position: fixed;
  top: 22px;
  right: 13.5px;
  z-index: 2;
 }
 .fixed {
  position: fixed;
  width: 100%;
  height: 100%;
 }
 .header-menu {
  display: none;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10;
  height: 100%;
  overflow-y: scroll;
 }
 .header-menu ul li a {
  display: block;
  padding: 15px 35px 15px 10px;
  border-bottom: 1px solid #fff;
  text-decoration: none;
  line-height: 1.3;
  color: #fff;
  font-size: 1.4rem;
 }
 .header-menu ul.accordion li ul li:first-child a {
  padding: 12px 35px 12px 10px;
 }
 .header-menu ul li.delete {
  background: #01b5d5 url(img/batu.png) 60% 50% no-repeat;
  background-size: 19px;
  padding: 10px;
  text-align: center;
  color: #fff;
  font-size: 1.3rem;
 }
 .header-menu ul.accordion ul {
  display: none;
 }
 .header-menu ul.accordion .subCat ul.subList {
  display: block;
 }
 .header-menu ul.accordion .tglMenu {
  display: block;
  padding: 15px 35px 15px 10px;
  background: #4174da url(img/footer_arr_bottom.png) right 10px center no-repeat;
  background-size: 16px auto;
  border-bottom: 1px solid #FFF;
  text-decoration: none;
  line-height: 1.3;
  color: #fff;
  font-size: 1.4rem;
 }
 .header-menu ul.accordion .open {
  background: #4174da url(img/footer_arr_top.png) right 10px center no-repeat;
  background-size: 16px auto;
 }
 .header-menu ul.accordion ul li a {
  font-family: inherit;
  background: #fff url(img/footer_arr.png) no-repeat right 15px center;
  background-size: 6px auto;
  color: #444;
  border-bottom: 1px solid #444;
 }
 .header-menu ul.accordion ul li.subCat a {
  padding: 12px 30px 12px 20px;
 }
 .header-menu ul.accordion .subCat ul.subList li a {
  border-bottom: 1px solid #444;
  padding: 12px 30px 12px 30px;
 }
 .header-menu ul.accordion li ul li:last-child a {
  border-bottom: none;
 }
 /*--------------------------------------
        Footer
    ---------------------------------------*/
 footer {
  width: 100%;
 }
 footer .areaInner {
  margin: 0;
  padding: 0;
  width: 100%;
 }
 footer .areaInner .footBox {
  margin: 0;
 }
 footer .areaInner .footBox .sttl a {
  color: #fff;
  display: block;
  font-size: 1.4rem;
  padding: 10px 4rem 10px 4%;
 }
 footer .areaInner .footBox .sttl .sitemap {
  background: #0967d8 url(img/footer_arr_bottom.png) right 10px center no-repeat;
  background-size: 16px auto;
 }
 footer .areaInner .footBox .sttl.tglMenu a {
  background: #0967d8 url(img/footer_arr_bottom.png) right 10px center no-repeat;
  background-size: 16px auto;
 }
 footer .areaInner .footBox .sttl.open a {
  background: #0967d8 url(img/footer_arr_top.png) right 10px center no-repeat;
  background-size: 16px auto;
 }
 footer .areaInner .footBox .sttl {
  border-bottom: 1px solid #f3f3f3;
  padding: 0;
  margin: 0;
 }
 footer .areaInner .footBox .accChild {
  box-sizing: border-box;
  display: none;
  padding: 0;
  margin: 0;
  width: 100%;
 }
 footer .areaInner .footBox .accChild li {
  margin: 0;
  width: 100%;
 }
 footer .areaInner .footBox .accChild .sp {
  display: block !important;
 }
 footer .areaInner .footBox .accChild li a {
  background:#e4edf8 url(img/footer_arr02.png) no-repeat right 15px center;
  background-size: 16px auto;
  border-bottom: 1px dotted #444;
  display: block;
  font-size: 1.3rem;
  padding: 10px 5rem 10px 4%;
 }
 footer .areaInner .footBox .accChild .subList li::before {
  content: none;
 }
 footer .areaInner .footBox .accChild li:last-child a {
  border-bottom: none;
 }
 footer .areaInner .footBox .accChild li.subCat a {
  background:#e4edf8 url(img/footer_arr02.png) no-repeat right 15px center;
  background-size: 16px auto;
  display: block;
  font-size: 1.3rem;
  padding: 10px 5rem 10px 4%;
 }
 footer .areaInner .footBox .accChild .subList {
  display: block;
  margin: 0;
 }
 footer .areaInner .footBox .accChild li.subCat {
  border-bottom: 1px dotted #444;
  padding: 0;
  position: relative;
 }
 footer .areaInner .footBox .accChild .subList li:first-child:before, footer .areaInner .footBox .accChild .subList li::after {
  content: none;
 }
 footer .areaInner .noticeArea {
  font-size: 1.2rem;
  line-height: 1.8em;
  margin: 30px auto 20px;
  width: 90%;
 }
 footer .areaInner .noticeArea p {
  padding: 20px;
 }
 footer .areaInner .noticeArea .botPrg {
  font-size: 1.0rem;
  margin: 10px 0 0;
  padding: 0;
 }
 footer .botArea {
  padding: 0;
 }
 footer .botArea .botInner {
  width: 100%;
 }
 footer p.copy {
  line-height: 1.3;
  margin: 0;
  padding: 14px 15px 12px;
  text-align: center;
 }
 /*--------------------------------------
       PageTop
    ---------------------------------------*/
 #page-top {
  position: fixed;
  bottom: 30px;
  right: 3%;
  z-index: 2;
  width: 40px;
 }
 /*--------------------------------------
  pankuzu
  ---------------------------------------*/
 #pankuzu {
  font-size: 1rem;
  overflow-x: scroll;
  padding: 0 0 0 5px;
  white-space: nowrap;
  background: #f5f5f5;
 }
 #pankuzu::-webkit-scrollbar-thumb {
  background-color: #c3c3c3;
  border-radius: 10px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .3);
 }
 #pankuzu::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 10px;
 }
 #pankuzu::-webkit-scrollbar {
  height: 3px;
  width: 100%;
 }
 /* ====================================
    下層
 ====================================  */
 #category h1, #page h1 {
  box-sizing: border-box;
  font-size: 2.6rem;
  padding: 1rem 0;
  margin-top: 1.5rem;
  background: url(img/h2_sp_bg.png) no-repeat center;	 
  background-size: 100% 90%;
 }
 #category h2:not([class]), #page h2:not([class]) {
  margin: 35px 0 20px;
  font-size: 1.8rem;
  background-size: 16px auto;
  background-position: left 10px top 10px;
  padding: 10px 10px 10px 40px;
 }
 #category h3:not([class]), #page h3:not([class]) {
  margin: 35px 0 20px;
  font-size: 1.7rem;
  padding: 8px 20px;
 }
 #index h5:not([class]),#category h4:not([class]), #page h4:not([class]) {
  font-size: 1.6rem;
  margin: 20px 0;
  padding: 8px 10px;
 }
 /* list */
 #contents ul:not([class]) {
  margin: 20px 0;
  padding: 10px 0 0;
 }
 #contents ul:not([class]) li {
  min-height: 12px;
  padding: 0 0 4px 2rem;
 }
 #contents ul:not([class]) li::before {
  top: 6px;
  left: 0.2rem;
 }
 ol:not([class]) {
  margin: 16px 0;
  padding: 10px 0 0;
 }
 ol:not([class]) li {
  padding: 0 0 4px 2rem;
 }
 ol:not([class]) li::before {
  font-size: 1.3rem;
  line-height: 1.8rem;
  top: 2px;
  left: 0;
  height: 16px;
  width: 16px;
 }
 /* table */
 #contents table {
  margin: 30px auto;
  width: 100%;
 }
 #contents table tr {
  display: block;
  margin: 0 0 10px;
 }
 #contents table tr:last-child {
  margin: 0;
 }
 #contents table th {
  font-size: 1.5rem;
  border-right: 1px solid #bfbfbf;
 }
 #contents table td {
  border: none;
  border-bottom: 1px solid #bfbfbf;
  border-left: 1px solid #bfbfbf;
  border-right: 1px solid #bfbfbf;
  font-size: 1.3rem;
 }
 #contents table td:first-of-type { border-left: 1px solid #bfbfbf; }
 #contents table th, #contents table td {
  box-sizing: border-box;
  display: block;
  padding: 10px;
  line-height: 2.4rem;
  width: 100%;
 }
 /* float img */
 .float-wrap {
  margin: 20px 0;
  padding: 0;
 }
 .float-wrap .float-img {
  margin: 0 0 12px 0;
  padding: 0;
  width: 100%;
 }
 .float-wrap .fr {
  padding: 0;
  width: 100%;
 }
 .float-wrap .fl,
 .float-wrap .fr {
  width: 100%;
  float: none;
 }
 .float-wrap .center {
  width: 100%;
 }
 /*--------------------------------------
      btn
    ---------------------------------------*/
 .btn-internal,
 .btn-web,
 .btn-link,
 .btn-tel {
  display: block;
  margin: 2rem auto;
  width: 90%;
 }
 .btn-internal a,
 .btn-web a {
  font-size: 1.4rem;
  padding: 14px 13%;
  min-height: 56px;
 }
 .btn-link a {
  background: #fff url("img/ar_bk.svg") no-repeat right 5.5% top 50% / 13px auto;
  border-radius: 1000px;
  border: solid 3px #333;
  color: #333333;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 14px 13%;
  display: block;
  text-align: center;
  text-decoration: none;
  box-shadow: 4px 8px 4px -5px rgba(201, 201, 201, 1);
 }
 .btn-tel a {
  background: #5652cb url("img/icon_tel.png") no-repeat left 5% top 50% / 20px auto;
  border-radius: 1000px;
  box-shadow: 4px 8px 4px -5px rgba(201, 201, 201, 1);
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 14px 13%;
  display: block;
  text-align: center;
  text-decoration: none;
 }
 /*--------------------------------------
        box-wrap
    ---------------------------------------*/
 .box-wrap { display: block; }
 .box-wrap .box {
  margin-bottom: 4rem;
  width: 100%;
  padding: 2rem 1.4rem 1rem;
 }
 .box-wrap .box::before {
  background-size: 100%;
  height: 4rem;
  width: 4rem;
  top: -2rem;
 }
 .box-wrap .box .box-head .sttl {
  font-size: 1.7rem;  
 }
 .box-wrap .box .box-head .sttl a {
  background-size: 13px auto;
  padding: 0 2rem;
 }
 /* frame-wrap */
 .frame-wrap {
  display: block;
 }
 .frame-wrap .frame {
  margin: 20px 0;
  width: 100%;
 }
 .frame-wrap .frame .frame-head .sttl {
  font-size: 1.7rem;  
 }
 .frame-wrap .frame .frame-head .sttl a {
  background-size: 13px auto;
  padding: 0 2rem;
 }
 /* 共通パーツ lower-bottom
----------------------------------------*/
 .lower-bottom { margin: 6rem 0 0; }
 .lower-bottom p {
	padding: 1rem 0;
 }
 #index .selection {
  width: 100%;
 }
 .selectionTitle {
  font-size: 2.3rem;
  padding: 3rem 0;
  margin-bottom: 3rem;
 }
 .selectionTitle span.small {
  font-size: 1.4rem;
  margin-bottom: 2rem;
 }
 .selectionBoxWrap { display: block; }
 .selectionBoxWrap .catch { 
  font-size: 1.6rem;
 }
.lower-bottom .selectionContentWrap {
  padding: 0 2rem 4rem;
}
 .selectionBox {
  width: 100%;
  margin: 3rem 0 0;
 }
 /* accordion */
 .btn-accordion {
  width: 90%;
  padding: 1.6rem 3rem;
 }
 .btn-accordion span:not([class]),
 .btn-accordion.is-open:before {
  font-size: 1.6rem;
 }
 .btn-accordion::after {
  width: 16px;
  height: 16px;
  margin-top: -8px;
  right: 24px;
 }
 /* -----------------------
    TOP
  ------------------------- */  
 #headNoteArea .sitename { width: 100%; }
 #headNoteArea .sitename h1 { font-size: 1.4rem; }
 #index .inner {
  width: 100%;
  padding: 0 2rem;
 }
 #index > .wi1000 {
  padding: 2rem;
 }
 .intro {
  padding: 0 1rem;
 }
 #index h2:not([class]) {
  font-size: 2.3rem;
  background-size: 100% auto;
  padding: 3rem 0;
  margin-bottom: 3rem;
  background: url(img/h2_sp_bg.png) no-repeat center;
  background-size: 100% 75%;
 }
 #index h2:not([class]) a {
  padding: 0 2rem;
  background-size: 12px auto;
 }
 #index h2:not([class]) span.small {
  font-size: 1.4rem;
  margin-bottom: 2rem;
 }
 #index h3:not([class]) {
  margin: 4rem 0 2rem;
  font-size: 1.8rem;
  background-size: 16px auto;
  background-position: left 10px top 10px;
  padding: 10px 10px 10px 40px
 }
 /* -----------------------
    MV
------------------------- */
 .mv {
  background: none;
  margin: 0 auto;
 }
 .mv .inner {
  width: 100%;
  padding: 0;
 }
 .mv .inner .mv_box {
  width: 100%;
 }
 .mv .mv_box .mainTit {
  background: url("img/mv_sp.jpg") no-repeat right top;
  background-size: cover;
  padding: 2rem 20% 2rem 2rem;
  font-size: 4.6vw;
  margin-bottom: 0;
 }
 .mv .mv_box p {
  padding: 0 2rem;
 }
 .mv .btn-internal {
  padding: 0 2rem;
  margin: 3rem auto 0;
 }
 /* mokuji
 ----------------------------------------------------*/
 .mokuji .toc_parts {
  width:auto;
  margin: 0 auto;
 }
 /* sec01
 ------------------------- */
 #index .sec01 .clinic {
  border-top-width: 6px;
 }
 #index .sec01 .clinic + .clinic {
  margin-top: 4rem;
 }
 #index .sec01 .clinic .inner {
  padding: 2rem;
 }
 #index .sec01 .clinic .btn-web {
  margin-top: 3rem;
 }
 #index .sec01 .clinic .clinic_name_box .catch {
  font-size: 1.6rem;
  text-align: center;
  margin: 0 0 1rem;
 }
 #index .sec01 .clinic .clinic_name_box .clinic_name {
  font-size: 2rem;
  margin: 0 0 1rem;
 }
/*  #index .sec01 .clinic .clinic_pho img {
  width: 80%;
 } */
 #index .sec01 .clinic .clinic_detail {
  padding: 1rem 0;
 }
 #index .sec01 .clinic .clinic_detail .detail .tag li {
  width: 48%;
  margin: 0 1%;
  height: 40px;
 }
 #index .sec01 .subBox01 {
  margin: 3rem 0;
  padding: 2rem;
 }
 #index .sec01 .subBox01 .catch {
  font-size: 1.8rem;
  background-size: 50px auto;
  min-height:50px;
 }
 #index .sec01 .subBox01 .catch_box .sub_catch {
  font-size: 1.6rem;
  margin: 2rem 0 1rem;
 }
 #index .sec01 .blueBox {
  margin: 3rem auto;
  padding: 2rem;
 }
 #index .sec01 .blueBox .subBox .txtArea .sTit {
  font-size: 1.8rem;
  padding: 0 0 8px;
  margin-bottom: 8px;
 }
 #index .sec01 .blueBox .subBox .txtArea ul li {
  width: 48%;
  margin: 0.6rem 0 0;
  padding-right: 0;
 }
 #index .sec01 .blueBox .subBox .txtArea ul li::before {
  top: 4px;
 }
 #index .sec01 .blueBox .subBox .pointArea {
  padding: 0 2rem 2rem;
  margin: 5rem auto 0;
 }
 #index .sec01 .blueBox .subBox .pointArea .pointTitle {
  min-width: 10%;
  max-width: 100%;
  font-size: 1.6rem;
 }
 #index .sec01 .information_title {
  font-size: 1.8rem;
  padding: 0 0 10px;
  margin: 4rem 0 2rem;
 }
 #contents .sec01 .clinic table tr {
  display: table-row;
  margin: 0;
 }
 #contents .sec01 .clinic table th,
 #contents .sec01 .clinic table td {
  display: table-cell;
  width: auto;
  border: 1px solid #bfbfbf;
  font-size: 1.4rem;
  line-height: 1.4;
 }
 /* sec02
 ------------------------- */
 #index .sec02 p { padding: 0; }
 /* sec03
 ------------------------- */
 .sec03 .float-wrap .fl,
 .sec03 .float-wrap .fr { width: 100%; }
 /* sec04
 ------------------------- */
 .sec04 .frame-wrap { padding: 0; }
 #contents .sec04 .frame-wrap .frame table th { width: 100%; }
 /* sec05
 ------------------------- */
 #index .sec05 {
  padding: 0;
 }
 #index .sec05::before {
  width: 100vw;
  left: 0;
  margin: 0;
 }
 #index .sec05 .content {
  flex-direction: column;
  padding: 0 3% 1.5rem;
 }
 #index .sec05 .feature {
  padding: 2rem 0;
  width: 100%;
 }
 #index .sec05 .feature .title {
  margin-bottom: 1rem;
 }
 #index .sec05 .feature .title div:first-child {
  font-size: 1.6rem;
  margin: 0 auto 1rem;
  padding: 0;
  width: 18%;
 }
 #index .sec05 .feature .title h2 {
  font-size: 2rem;
  margin: 0 auto;
  padding: 0;
  text-align: center;
 }
 #index .sec05 .feature .title h2::before { content: none; }
 #index .sec05 .feature .title::after { content: none; }
 #index .sec05 .feature .btn-internal {
  margin: 2rem auto 0;
 }
 #index .sec05 .feature_img_wrap {
  margin-bottom: 5rem;
  padding-top: 1rem;
  position: relative;
 }
 #index .sec05 .feature .feature_img_wrap::after {
  content: "";
  border-bottom: 1px solid #001842;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -28px;
  height: 2px;
  width: 61%;
  margin: 0 auto;
 }
 #index .sec05 .feature_img {
  width: 100%;
 }
 #index .sec05 .feature_img_wrap .caption {
  font-size: 1.0rem;
  line-height: 1.5rem;
  margin: 0;
 }
 #index .sec05 .feature .txt {
  font-size: 1.4rem;
  width: 100%;
 }
 /* sec06
 ------------------------- */
 .sec06 .frame-wrap { padding: 0; }
 /* sec07
 ------------------------- */
 /* sec08
 ----------------------------------------------------*/
 .sec08 .box-wrap { padding: 0; }
 #index .wi1000.host {
	padding: 2rem 2rem 4rem 2rem;
  }
 /*-------------------------
 toc
 ------------------------- */
 .toc_parts {
  padding: 3rem 2.5rem 2rem;
 }
 .toc_parts .ttl {
  font-size: 1.6rem;
  border-left: 2px solid #4174da;
 }
 #toc {
  margin: 1.5rem 0 0 0;
  padding: 1rem 0 0;
 }
 #toc .chapter .chapter-h {
  margin: 1rem 0;
  padding: 0 0 0 3rem;
  font-size: 1.5rem;
  line-height: 1.6;
 }
 #toc ul.chapter .chapter-h::before {
  top: 11px;
  font-size: 1.8rem;
 }
 #toc li.chapter-h.chapter-h-three {
  margin: 0.5rem 0 0.5rem 2rem;
 }
 #toc li.chapter-h.chapter-h-three::before {
  top: 6px;
  width: 6px;
  height: 6px;
 }
 #toc li.chapter-h-three + .chapter-h-two {
  margin-top: 2rem;
 }
}