@charset "utf-8";

/* GoogleFonts読み込み 下記のライセンス記述は削除禁止 */
/*
* "Noto Sans JP" licensed under the SIL Open Font License 1.1
* by https://fonts.google.com/specimen/Noto+Sans+JP
*/
@font-face {
font-family: "Noto Sans JP";
font-style: normal;
font-weight: 400;
src: url("fonts/NS-400.woff2") format("woff2"), url("fonts/NS-400.woff") format("woff");
font-display: swap;
}
@font-face {
font-family: "Noto Sans JP";
font-style: normal;
font-weight: 700;
src: url("fonts/NS-700.woff2") format("woff2"), url("fonts/NS-700.woff") format("woff");
font-display: swap;
}


/*--------------------------------------------------------------------------
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%;
}


/*--------------------------------------
Base
---------------------------------------*/
body {
color: #333;
font-family: "Noto Sans JP", sans-serif;
font-size: 15px;
font-size: 1.5rem;
line-height: 1.8;
min-width: 100rem;
overflow-x: hidden;
word-break: break-word;
}

img {
max-width: 100%;
height: auto;
}

a {
color: inherit;
text-decoration: none;
}

.fl {
float: left;
}

.fr {
float: right;
}

.strong {
font-weight: 700;
}

.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: 100rem;
margin: 0 auto;
}

.dashed {
border: 1px dashed #444;
}

.clearfix::after,
.cf::after {
clear: both;
display: block;
content: "";
}

.auto {
margin: 0 auto;
}

.sp {
display: none;
}

.sp_br {
display: none;
}

a:hover {
opacity: 0.7;
}

body * {
box-sizing: border-box;
}


/*--------------------------------------
header
---------------------------------------*/
header {
position: relative;
border-top: 9px solid #514741;
}
header .rightTxt {
width: 100rem;
margin: 0 auto;
padding: 0.5rem 0;
font-size: 1rem;
font-weight: 500;
line-height: 1.4;
text-align: right;
}
header .rightTxt::before {
display: inline-block;
width: 2.8rem;
height: 1.8rem;
margin: 0 0.5rem 0 0;
background: #000;
color: #fff;
font-size: 1.2rem;
line-height: 1.7rem;
text-align: center;
content: "PR";
}
#headNoteArea {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 16rem;
background: url(img/mv_bg_04.png) no-repeat center center;
background-size: cover;
text-align: center;
}
#headNoteArea .sitename {
display: inline-block;
padding: 1rem 3.2rem 1.2rem 3.6rem;
background: rgb(236,100,0);
background: -webkit-linear-gradient(90deg, rgba(236,100,0,1) 50%, rgba(248,180,30,1) 100%);
background: linear-gradient(90deg, rgba(236,100,0,1) 50%, rgba(248,180,30,1) 100%);
color: #fff;
font-size: 2.2rem;
font-weight: 700;
line-height: 1.4;
}
#headNoteArea .sitename a {
color: inherit;
text-decoration: none;
}


/*--------------------------------------
g-nav
---------------------------------------*/
#g-nav {
width: 100%;
position: relative;
margin: 0;
}
#g-nav ul {
display: flex;
justify-content: flex-start;
align-items: center;
width: 100rem;
margin: 0 auto;
}
#g-nav ul li {
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 20%;
}
#g-nav ul li::after {
content: "";
width: 1px;
height: 20px;
display: inline-block;
border-left: 1px solid #3e3a39;
position: absolute;
top: calc(50% - 10px);
left: 0;
}
#g-nav ul li:last-child::before {
content: "";
width: 1px;
height: 20px;
display: inline-block;
border-right: 1px solid #3e3a39;
position: absolute;
top: calc(50% - 10px);
right: 0;
}
#g-nav li a {
color: #3e3a39;
display: block;
text-align: center;
font-size: 14px;
font-size: 1.4rem;
padding: 16px 20px;
box-sizing: border-box;
line-height: 1.8rem;
}


/*--------------------------------------
side
---------------------------------------*/
#side {
float: right;
width: 20rem;
margin: 0 0 6rem 0;
}
#side .sideBox {
margin: 0 0 3rem 0;
padding: 1rem;
background: #f5f4f2;
overflow: hidden;
}
#side .sideBox a {
line-height: 1.6;
}
#side .sideBox .sttl {
box-sizing: border-box;
position: relative;
overflow: hidden;
}
#side .sideBox .sttl a {
display: block;
position: relative;
height: 100%;
padding: 1.5rem 0.5rem;
background: #f5f4f2;
font-weight: 700;
line-height: 1.4;
text-decoration: none;
z-index: 2;
}
#side .sideBox .sttl a:hover {
opacity: 0.7;
}
#side .sideBox ul {
margin: 0;
padding: 0;
background: #fff;
}
#side .sideBox li {
margin: 0;
padding: 0;
background: none;
border-top: dashed 1px #d8d8d8;
}
#side .sideBox li:first-child {
border-top: none;
}
#side .sideBox li ul.subList li {
border-top: 1px dashed #d8d8d8;
}
#side .sideBox li::before {
display: none;
content: none;
}
#side .sideBox li a {
display: block;
padding: 1.5rem 3.5rem 1.5rem 1rem;
background: url(img/arrow01_brown.svg) no-repeat right 1rem center;
background-size: 20px auto;
font-size: 1.3rem;
text-decoration: none;
}
#side .sideBox .subList {
margin: 0;
}
#side .sideBox .subList li {
margin: 0;
background: none;
}
#side .sideBox .subList li:last-child {
background: none;
}
#side .sideBox .subList li a {
display: block;
padding: 1.5rem 3rem;
background: url(img/arrow_side_sub.png) no-repeat 1rem 1rem, url(img/arrow01_brown.svg) no-repeat right 1rem center;
background-size: auto, 20px auto;
}


/*--------------------------------------
footer
---------------------------------------*/
footer {
margin: 0;
padding: 0;
background: #514741;
}

footer .areaInner {
width: 100rem;
margin: 0 auto;
padding: 40px 0 0 0;
}

footer a {
color: #231815;
text-decoration: none;
}

footer a:hover {
text-decoration: underline;
}

footer .areaInner .footBox {
margin: 0 0 30px 0;
}

footer .areaInner .footBox .sttl {
margin: 0 0 1.5rem 0;
padding: 0 0 1rem 0;
border-bottom: 1px dotted #fff;
}

footer .areaInner .footBox .sttl a {
display: inline-block;
min-height: 2.6rem;
padding: 0 0 0 3.8rem;
background: url(img/arrow02_white.png) no-repeat 0.3rem center;
background-size: 26px auto;
color: #fff;
font-size: 1.6rem;
font-weight: 700;
}

footer .footBox ul {
padding: 0 20px;
}

footer .areaInner .footBox .accChild {
padding: 0 0 0 12px;
box-sizing: border-box;
}

footer .areaInner .footBox .accChild li {
background: none;
}

footer .areaInner .footBox .accChild li.subCat {
margin: 0 30px 0 0;
padding: 0;
}

footer .areaInner .footBox .accChild .sp + li::before {
/* content: "　|　"; */
letter-spacing: 0;
color: #a3b9b7;
}

footer .areaInner .footBox .accChild .sp + li::before {
/* content: "|　"; */
letter-spacing: 0;
color: #a3b9b7;
}

footer .areaInner .footBox .accChild .sp + li.subCat::before {
content: "";
}

footer .areaInner .footBox .accChild .subList li::after {
content: "　/　";
letter-spacing: 0;
color: #fff;
}

footer .areaInner .footBox .accChild .subList li:last-child::after {
content: none;
}

footer .areaInner .footBox .accChild li {
display: inline-block;
margin: 0 20px 0 0;
}

footer .areaInner .footBox .accChild li a {
padding: 0 0 0.2rem 3.2rem;
background: url(img/arrow01_white.svg) no-repeat left center;
background-size: 20px auto;
color: #fff;
font-size: 1.3rem;
font-weight: 400;
}

footer .areaInner .footBox .accChild .subList li:first-child::before {
content: "　/　";
letter-spacing: 0;
color: #fff;
}

footer .areaInner .footBox .accChild .subList {
display: inline-block;
padding: 0;
margin: 0 0 0 20px;
}

footer .areaInner .footBox .accChild .subList li {
padding: 0;
display: inline-block;
margin: 0;
}

footer .areaInner .footBox .accChild .subList li a {
padding: 0 8px;
font-size: 13px;
font-size: 1.3rem;
background: none;
}

footer .areaInner .noticeArea {
width: 70%;
margin: 6rem auto 3rem auto;
color: #fff;
}

footer .areaInner .noticeArea p {
padding: 2rem 3rem;
border: 1px solid #fff;
font-size: 1.2rem;
}

footer .areaInner .noticeArea .botPrg {
border: none;
text-align: center;
}

footer .botArea {
background: #fff;
padding: 1.2rem 0 1rem 0;
}

footer .botArea .botInner {
width: 100rem;
margin: 0 auto;
position: relative;
}

footer .botArea .botInner .smap {
float: right;
}

footer .botArea .botInner .smap a {
font-size: 1.2rem;
}

footer .botArea .botInner .smap a:hover {
text-decoration: underline;
}

footer p.copy {
float: left;
margin: 0;
font-size: 1.2rem;
}

footer .areaInner .footBox .accChild .sp {
display: none;
}


/*--------------------------------------
slider
---------------------------------------*/
.slideArea {
margin: 6rem auto;
}
.slideArea .slideinner {
position: relative;
width: 100rem;
margin: 0 auto;
padding: 0 4.5rem;
}
.slick-slider {
position: relative;
display: block;
-moz-box-sizing: border-box;
box-sizing: border-box;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}
.slick-list {
display: block;
position: relative;
min-height: 48rem;
margin: 0;
padding: 0;
overflow: hidden;
}
.slick-list:focus {
outline: none;
}
.slick-list.dragging {
cursor: pointer;
cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
transform: translate3d(0, 0, 0);
}
.slick-track {
display: block;
position: relative;
left: 0;
top: 0;
}
.slick-track::before,
.slick-track::after {
display: table;
content: "";
}
.slick-track::after {
clear: both;
}
.slick-loading .slick-track {
visibility: hidden;
}

.slick-slide {
display: none;
float: left;
height: 100%;
min-height: 0.1rem;
}
[dir="rtl"] .slick-slide {
float: right;
}
.slick-slide img {
display: block;
margin: auto;
}
.slick-slide.slick-loading img {
display: none;
}
.slick-slide.dragging img {
pointer-events: none;
}
.slick-initialized .slick-slide {
display: block;
}
.slick-initialized .slick-slide img {
width: auto;
height: 50rem;
}
.slick-initialized .slick-slide p {
display: block;
margin: 2rem 0 0 0;
padding: 0 1rem;
font-size: 1.2rem;
line-height: 1.4;
text-align: center;
}
.slick-loading .slick-slide {
visibility: hidden;
}
.slick-vertical .slick-slide {
display: block;
height: 7rem;
}
.slider {
position: relative;
max-width: 94rem;
}
.slider img {
max-width: 100%;
height: auto;
}
.slider .caption {
text-align: center;
}
.slider .slider-nav-wrap {
float: right;
position: relative;
width: 12%;
height: 48rem;
padding: 1rem 0 0 0;
}
.slider .slider-nav-wrap .slider-nav .slick-list {
height: 46rem !important;
padding: 0 !important;
}
.slider .slider-nav-wrap .slider-nav .slick-track {
left: 0;
width: 100%;
opacity: 1;
}
.slider .slider-nav-wrap .slider-nav .slick-slide {
transition: opacity 0.3s ease;
opacity: 1;
}
.slider .slider-nav-wrap .slider-nav .slick-slide img {
width: auto;
height: 6rem;
cursor: pointer;
}
.slider .slider-nav-wrap .slider-nav .slick-slide:hover {
opacity: 0.5;
}
.slider .slider-prev:hover,
.slider .slider-next:hover {
opacity: 0.7;
}
.slider .slider-nav-wrap .slick-arrow {
display: none;
font-size: 0;
cursor: pointer;
z-index: 5;
}
.slider .slider-nav-wrap .slick-prev {
position: absolute;
left: 50%;
top: -2rem;
transform: translateX(-50%);
background: url(img/arrow_slide_thumb_top.png) center center no-repeat;
background-size: contain;
width: 23px;
height: 13px;
}
.slider .slider-nav-wrap .slick-next {
position: absolute;
left: 50%;
top: auto;
bottom: -2rem;
transform: translateX(-50%);
background: url(img/arrow_slide_thumb_bottom.png) center center no-repeat;
background-size: contain;
width: 23px;
height: 13px;
}
.slider .slider-for {
position: relative;
float: left;
width: 85%;
}
.slider .slider-for .slider-prev {
position: absolute;
left: 2rem;
top: calc(50% - 1.8rem);
transform: translateY(-50%);
width: 3rem;
height: 3rem;
background: url(img/arrow_slide_prev.png) no-repeat center;
background-size: contain;
font-size: 0;
cursor: pointer;
z-index: 5;
}
.slider .slider-for .slider-next {
position: absolute;
right: 2rem;
top: calc(50% - 1.8rem);
transform: translateY(-50%);
width: 3rem;
height: 3rem;
background: url(img/arrow_slide_next.png) no-repeat center;
background-size: contain;
font-size: 0;
cursor: pointer;
z-index: 5;
}


/*--------------------------------------
pageTop
---------------------------------------*/
#page-top {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 2;
width: 6.5rem;
}
#page-top:hover {
opacity: 0.7;
}


/*--------------------------------------
pankuzu
---------------------------------------*/
.pankuzu-wrap {
margin: 0 auto 5rem auto;
padding: 1rem 0 0 0;
}
#pankuzu {
position: relative;
width: 100rem;
margin: 0 auto;
font-size: 1.2rem;
}

#pankuzu a:hover {
text-decoration: underline;
}


/* ================== */
/*  メインコンテンツ  */
/* ================== */

#contents {
margin: 0 auto;
padding: 0;
}

#index,
#category,
#page {
margin: 0;
padding: 0;
}

#category,
#page {
width: 100rem;
margin: 0 auto;
}

#category .baseBox,
#page .baseBox {
float: left;
width: 76rem;
padding: 0 0 10rem 0;
}

.main p:not([class]) {
margin: 1em auto;
}

.main p:not([class]) > span:not([class]),
.main li:not([class]) > span:not([class]),
.main td:not([class]) > span:not([class]) {
background: linear-gradient(transparent 60%, #fde182 60%);
font-size: 1.6rem;
font-weight: 700;
}

.main p:not([class]) > a:not([class]),
.main li:not([class]) > a:not([class]),
.main td:not([class]) > a:not([class]) {
text-decoration: underline;
}
.main p:not([class]) > a:not([class]):hover,
.main li:not([class]) > a:not([class]):hover,
.main td:not([class]) > a:not([class]):hover {
text-decoration: none;
}

.caption {
margin: 0.8rem 0 0 0;
color: #999;
font-size: 1rem;
line-height: 1.4;
word-break: break-all;
}
.caption a {
color: #999;
text-decoration: underline;
}
.caption a:hover {
text-decoration: none;
}


/*--------------------------------------
heading
---------------------------------------*/
.baseBox h1:not([class]),
.baseBox h2:not([class]),
.baseBox h3:not([class]),
.baseBox h4:not([class]),
.baseBox h5:not([class]),
.baseBox h6:not([class]) {
position: relative;
font-weight: 700;
line-height: 1.4;
}

.baseBox h1:not([class]) {
margin: 0 auto 6rem auto;
color: #514741;
font-size: 3rem;
text-align: center;
}
.baseBox h1:not([class])::after {
position: absolute;
left: 50%;
top: calc(100% + 1.5rem);
transform: translateX(-50%);
width: 6.4rem;
height: 0.5rem;
background: #ef5b24;
content: "";
}

.baseBox h2:not([class]) {
margin: 5rem 0 3rem 0;
padding: 1.5rem 2rem 1.5rem 8rem;
background: #fef7d9;
color: #37312d;
font-size: 2.6rem;
}
.baseBox h2:not([class])::before {
position: absolute;
left: 0.5rem;
top: -1.8rem;
width: 7rem;
height: 7rem;
background: url(img/title_bg_01.png) no-repeat left top;
background-size: contain;
content: "";
}

.baseBox h3:not([class]) {
margin: 4rem 0 2rem 0;
padding: 0 2rem 1rem 0;
border-bottom: 1px dotted #33c7c9;
font-size: 2.2rem;
}

.baseBox h4:not([class]),
.baseBox h5:not([class]),
.baseBox h6:not([class]) {
margin: 3rem 0 2rem 0;
padding: 0 2rem 0 1.5rem;
border-left: 3px solid #ef5b24;
font-size: 2rem;
}

.baseBox h2:not([class]) a,
.baseBox h3:not([class]) a,
.baseBox h4:not([class]) a,
.baseBox h5:not([class]) a,
.baseBox h6:not([class]) a {
display: block;
padding: 0 3rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 24px auto;
color: inherit;
text-decoration: none;
}
.baseBox h2:not([class]) a:hover,
.baseBox h3:not([class]) a:hover,
.baseBox h4:not([class]) a:hover,
.baseBox h5:not([class]) a:hover,
.baseBox h6:not([class]) a:hover {
text-decoration: none;
opacity: 0.7;
}


/*--------------------------------------
title
---------------------------------------*/
.recommend,
.check {
position: relative;
margin: 5rem 0 3rem 2.5rem;
padding: 2rem 2rem 2rem 7rem;
background: #e5f5f5;
font-size: 2.5rem;
font-weight: 700;
line-height: 1.4;
}
.recommend::before,
.check::before {
display: flex;
align-items: center;
justify-content: center;
position: absolute;
left: -2.5rem;
top: 50%;
transform: translateY(-50%);
width: 8.2rem;
height: 8.2rem;
padding: 0 0.5rem 0.8rem 0;
background: url(img/title_bg_02.png) no-repeat left top;
background-size: contain;
box-sizing: border-box;
color: #fff;
font-size: 1.3rem;
font-weight: 700;
line-height: 1.1;
text-align: center;
content: "おすすめ";
}
.check::before {
content: "CHECK";
}
.recommend a,
.check a {
display: block;
padding: 0 3rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 24px auto;
color: inherit;
text-decoration: none;
}
.check a:hover {
text-decoration: none;
opacity: 0.7;
}

.rank-wrap {
counter-reset: number;
}
.rank {
position: relative;
margin: 5rem 0 3rem 2.5rem;
padding: 2rem 2rem 2rem 6rem;
background: #fef7d9;
color: #423934;
font-size: 2.4rem;
font-weight: 700;
line-height: 1.4;
}
.rank::before {
display: flex;
align-items: center;
justify-content: center;
position: absolute;
left: -2.5rem;
top: 50%;
transform: translateY(-50%);
width: 5.6rem;
height: 5.6rem;
background: #ef5b24;
border-radius: 50%;
box-sizing: border-box;
color: #fff;
font-size: 3rem;
font-weight: 700;
line-height: 1.1;
text-align: center;
content: counter(number, decimal-leading-zero);
counter-increment: number 1;
}
.rank::after {
position: absolute;
right: -0.3rem;
bottom: -0.3rem;
width: 2.8rem;
height: 2.8rem;
border-right: 3px solid #f06531;
border-bottom: 3px solid #f06531;
content: "";
}
.rank a {
display: block;
padding: 0 3rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 24px auto;
color: inherit;
text-decoration: none;
}
.rank a:hover {
text-decoration: none;
opacity: 0.7;
}


/*--------------------------------------
lists
---------------------------------------*/
.main ul {
margin: 4rem 0;
padding: 0;
}
.main ul li {
position: relative;
margin: 0 0 1rem 0;
padding: 0 0 0 2.4rem;
word-break: break-all;
}
.main ul li:last-child {
margin: 0;
}
.main ul li::before {
position: absolute;
left: 0;
top: 0.9rem;
width: 1.2rem;
height: 1.2rem;
background: #ef5b24;
border-radius: 50%;
content: "";
}

.main ol {
margin: 4rem 0;
padding: 0;
counter-reset: number;
}
.main ol li {
position: relative;
margin: 0 0 1rem 0;
padding: 0 0 0 2.8rem;
counter-increment: number;
}
.main ol li:last-child {
margin: 0;
}
.main ol li::before {
position: absolute;
left: 0;
top: 0.4rem;
width: 2rem;
height: 2rem;
background: #423934;
color: #fff;
font-size: 1.2rem;
line-height: 1.6;
text-align: center;
}
.main ol li:nth-child(-n+9)::before {
content: counter(number);
}
.main ol li:nth-child(n+10)::before {
content: counter(number);
}


/*--------------------------------------
table
---------------------------------------*/
table th,
table td {
word-break: break-all;
}
.main table {
table-layout: fixed;
width: 100%;
margin: 5rem 0;
}
.main table th {
padding: 1.5rem;
background: #fefbec;
border: 1px solid #514741;
font-weight: 700;
line-height: 1.4;
text-align: center;
width: 30%;
}
.main table td {
padding: 1.5rem;
background: #fff;
border: 1px solid #514741;
line-height: 1.4;
}


/*--------------------------------------
float-wrap
---------------------------------------*/
.float-wrap {
margin: 6rem 0;
}
.float-wrap p:not([class]) {
margin: 1em 0 0 0;
}
.float-wrap .fl {
width: 28rem;
margin: 0 4rem 1rem 0;
text-align: center;
}
.float-wrap .fr {
width: 28rem;
margin: 0 0 1rem 4rem;
text-align: center;
}
.float-wrap .center {
width: 45rem;
margin: 0 auto 2rem auto;
text-align: center;
}
.float-wrap .catch {
margin: 0 0 1.5rem 0;
color: #ef5b24;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
}


/*--------------------------------------
btns
---------------------------------------*/
.btn-tel {
display: none;
}

.btn-internal,
p.btn-internal {
position: relative;
max-width: 55rem;
margin: 4rem auto;
padding: 0;
text-align: center;
}
.btn-internal a {
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 100%;
min-height: 7.4rem;
margin: 0 auto;
padding: 2rem 5.5rem;
background: #ff927c url(img/arrow01_white.svg) no-repeat right 2rem center;
background-size: 3rem auto;
border-radius: 6rem;
box-shadow: 7px 7px 0 0 #c84b4b;
box-sizing: border-box;
color: #fff;
font-size: 1.6rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
text-decoration: none;
transition: 0.2s;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.btn-internal a:hover {
box-shadow: none;
text-decoration: none;
opacity: 1;
transform: translate(7px, 7px);
}

.btn-web,
p.btn-web {
position: relative;
max-width: 55rem;
margin: 4rem auto;
padding: 0;
text-align: center;
}
.btn-web a {
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 100%;
min-height: 7.4rem;
margin: 0 auto;
padding: 2rem 5.5rem;
background: #00c4d6 url(img/arrow01_white.svg) no-repeat right 2rem center;
background-size: 3rem auto;
border-radius: 6rem;
box-shadow: 7px 7px 0 0 #156581;
box-sizing: border-box;
color: #fff;
font-size: 1.6rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
text-decoration: none;
transition: 0.2s;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}

.btn-web a:hover {
box-shadow: none;
text-decoration: none;
opacity: 1;
transform: translate(7px, 7px);
}

.btn-link {
margin: 4rem 0;
padding: 0;
text-align: right;
}
.btn-link a {
display: inline-block;
position: relative;
padding: 0.2rem 0 0.4rem 3.2rem;
background: url(img/arrow01_brown.svg) no-repeat left center;
background-size: 22px auto;
line-height: 1.4;
text-decoration: underline;
}
.btn-link a:hover {
text-decoration: none;
opacity: 0.7;
}


/*--------------------------------------
slider
---------------------------------------*/
.baseBox .slider {
max-width: 100%;
margin: 8rem auto;
}
.baseBox .slideArea .slideinner {
width: 100%;
padding: 0;
}
.baseBox .slick-initialized .slick-slide img {
height: 42rem;
}
.baseBox .slider .slider-nav-wrap {
height: 42rem;
}
.baseBox .slider .slick-list {
min-height: auto;
}
.baseBox .slider .slider-nav-wrap .slider-nav .slick-list {
min-height: auto;
height: 41rem !important;
padding: 0 !important;
}


/*--------------------------------------
box-wrap
---------------------------------------*/
.box-wrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.box-wrap .box {
width: calc((100% - 4.6rem) / 2);
margin: 0 0 3.6rem 0;
padding: 3rem 2.5rem;
background: #fff;
border: 1px solid #ef5b24;
}
.box-wrap .box-head {
display: flex;
align-items: center;
justify-content: center;
position: relative;
margin: 0 0 5rem 0;
}
.box-wrap .box-head::before {
position: absolute;
left: 50%;
top: calc(100% + 2.2rem);
transform: translateX(-50%);
width: 9.6rem;
height: 0.1rem;
border-bottom: 2px solid #7bcbcc;
content: "";
}
.box-wrap .box-head .ttl {
width: 100%;
color: #ef5b24;
font-size: 2.2rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.box-wrap .box-head .ttl a {
display: block;
padding: 0 3rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 24px auto;
color: inherit;
text-decoration: none;
}
.box-wrap .box-body p:not([class]) {
margin: 0;
}


/*--------------------------------------
frame-wrap
---------------------------------------*/
.frame-wrap {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.frame-wrap::after {
display: block;
width: calc((100% - 6.4rem) / 3);
content: "";
}
.frame-wrap .frame {
position: relative;
width: calc((100% - 6.4rem) / 3);
margin: 0 0 4rem 0;
padding: 2rem;
background: #fef7d9;
border-radius: 2rem;
}
.frame-wrap .frame .inner {
padding: 3rem 2rem;
background: #fff;
border-radius: 1rem;
}
.frame-wrap .frame-head {
display: flex;
align-items: center;
justify-content: center;
margin: 0 0 2rem 0;
}
.frame-wrap .frame-head .ttl {
width: 100%;
color: #ef5b24;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.frame-wrap .frame-head .ttl a {
display: block;
padding: 0 3rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 24px auto;
color: inherit;
text-decoration: none;
}
.frame-wrap .frame-body p:not([class]) {
margin: 0;
}
.frame-wrap .frame-body table {
margin: 2rem 0 0 0;
font-size: 1.4rem;
}
.frame-wrap .frame-body table th {
width: 9rem;
padding: 0.8rem 0.5rem;
}
.frame-wrap .frame-body table td {
padding: 0.8rem;
}


/*--------------------------------------
accordion
---------------------------------------*/
.accordion-item {
display: none;
}
.accordion-btn {
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 46rem;
min-height: 8rem;
margin: 0 auto 4rem auto;
padding: 2rem 7rem 2rem 5rem;
background: #e1e1e1;
border-radius: 6rem;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
cursor: pointer;
transition: 0.2s;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.accordion-btn::before {
position: absolute;
top: 50%;
right: 3rem;
width: 3rem;
height: 0.1rem;
border-bottom: 2px solid #333;
content: "";
transform: translate(0, -50%);
z-index: 2;
}
.accordion-btn::after {
position: absolute;
right: 4.3rem;
top: 50%;
width: 0.1rem;
height: 3rem;
border-left: 2px solid #333;
content: "";
transform: translate(0, -50%);
transition: 0.3s ease all;
z-index: 2;
}
.accordion-btn:hover {
opacity: 0.7;
}
.accordion-btn.is-open::after {
transform: translate(0, -50%) rotate(-90deg);
}


/*--------------------------------------
toc
---------------------------------------*/
.block-toc {
margin: 0 auto 4rem auto;
}
.block-toc .accordion-btn {
margin: 0 auto;
}
.toc_parts {
margin: 4rem 0 0 0;
padding: 3rem 4rem 2rem 4rem;
background: #f9f8f4;
}
.toc_parts .ttl {
padding: 0 0 0 1rem;
border-left: 4px solid #ef5b24;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
}
#toc {
margin: 1.5rem 0 0 0;
border-top: 1px solid #333;
}
#toc .chapter {
margin: 0 0 2rem 0;
padding: 0 1rem;
counter-reset: count;
}
#toc .chapter .chapter-h {
position: relative;
margin: 2rem 0 0 0;
padding: 0 0 0 4rem;
font-size: 1.6rem;
font-weight: 700;
line-height: 1.8;
counter-increment: count;
}
#toc .chapter .chapter-h:last-child {
margin-bottom: 0;
}
#toc ul.chapter .chapter-h::before {
position: absolute;
left: 0;
top: 1.4rem;
transform: translateY(-50%);
width: auto;
height: auto;
background: none;
border-radius: 0;
color: #ef5b24;
font-size: 2rem;
font-weight: 700;
content: counter(count, decimal-leading-zero);
}
#toc .chapter .chapter-h a {
text-decoration: none;
}
#toc .chapter .chapter-h a:hover {
opacity: 0.7;
}
#toc li.chapter-h.chapter-h-three {
margin: 0.5rem 0 0.5rem 4rem;
padding: 0 0 0 1.5rem;
font-size: 1.5rem;
counter-increment: none;
}
#toc li.chapter-h.chapter-h-three::before {
position: absolute;
left: 0;
top: 0.7rem;
transform: rotate(180deg);
width: 0.8rem;
height: 0.8rem;
border-top: 1px solid #333;
border-right: 1px solid #333;
content: "";
}
#toc li.chapter-h.chapter-h-three a {
font-weight: normal;
}
#toc li.chapter-h.chapter-h-three span {
font-weight: 400;
}
#toc .chapter br {
display: none;
}


/*--------------------------------------
related
---------------------------------------*/
#related-article p:not([class]) {
margin: 0;
}
#related-article.related-article01-frame {
position: relative;
margin: 6rem auto;
padding: 3rem 4rem;
background: #fefbec;
}
#related-article .related-article01-title {
padding: 0 0 0 1rem;
border-left: 4px solid #ef5b24;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
}
#related-article .related-article01-list {
margin: 1.5rem 0 0 0;
padding: 0 2rem;
border-top: 1px solid #333;
}
#related-article .related-article01-list li {
position: relative;
margin: 2rem 0 0 0;
padding: 0 0 0 2.4rem;
font-weight: 700;
line-height: 1.4;
}
#related-article .related-article01-list li::before {
position: absolute;
left: 0;
top: 0.7rem;
width: 1rem;
height: 1rem;
background: #ef5b24;
border-radius: 50%;
content: "";
}
#related-article .related-article01-list li + li {
margin: 1rem 0 0 0;
}
#related-article .related-article01-list a {
text-decoration: none;
}
#related-article .related-article01-list a:hover {
opacity: 0.7;
}


/*--------------------------------------
banner
---------------------------------------*/
.block-banner {
display: none;
position: fixed;
right: 0;
bottom: 12rem;
width: 15.8rem;
box-sizing: border-box;
z-index: 310;
}
.block-banner a {
display: block;
padding: 12.1rem 0 0 0;
background: url(img/banner_bg_01.png) no-repeat center top;
box-shadow: 5px 5px 0 0 #e9e8e6;
}
.block-banner a > span {
display: block;
padding: 1rem;
background: #fef7d9 url(img/banner_bg_02.png) no-repeat right 0.3rem bottom 0.3rem;
background-size: 16px auto;
color: #333;
font-size: 1.7rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.block-banner a span span {
color: #ef5b24;
}


/*--------------------------------------
addCont
---------------------------------------*/
.addInner {
position: relative;
width: 100rem;
margin: 0 auto;
}

.list-page .addInner {
width: auto;
}


.headArea {
position: relative;
padding: 0 0 0 2rem;
z-index: 2;
}

.headArea .titL {
margin: 0 0 3rem 0;
color: #514741;
font-size: 3.6rem;
font-weight: 700;
line-height: 1.4;
width: 100%;
text-align: center;
}

.headArea .titL01 {
 margin: 0 0 3rem 0;
    color: #514741;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}

.list-page .titL01 {
    font-size: 2.6rem;
}

.headArea .titL a {
display: inline-block;
padding: 0 8rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 4rem auto;
color: inherit;
text-decoration: none;
}

.headArea .addTxt {
margin: 0 0 4rem 0;
}

.list-page  .headArea .addTxt {
margin: 0 0 2rem 0;
}

.headArea p.addTxt span {
background: linear-gradient(transparent 60%, #fde182 60%);
font-size: 1.6rem;
font-weight: 700;
}


/*--------------------------------------
addCont01
---------------------------------------*/
.addCont01 {
position: relative;
padding: 11rem 0;
background: #ffebc3;
z-index: 2;
}

.addCont01.list-page {
position: relative;
padding: 5rem 2rem 3rem 2rem;
background: #ffebc3;
z-index: 2;
}

.addCont01 .addInner::before {
position: absolute;
left: -13rem;
top: -8rem;
width: 19rem;
height: 19rem;
background: url(img/add01_bg_01.png) no-repeat left top;
background-size: contain;
content: "";
z-index: -1;
}

.list-page .addInner::before {
background: none;
}

.addCont01 .addInner::after {
position: absolute;
left: calc(100% - 2rem);
bottom: -6rem;
width: 19rem;
height: 19rem;
background: url(img/add01_bg_05.png) no-repeat left top;
background-size: contain;
content: "";
z-index: -1;
}
.list-page .addInner::after {
background: none;
}

.addCont01 .headArea::before {
position: absolute;
right: -25px;
top: -7rem;
width: 19rem;
height: 19rem;
background: url(img/add01_bg_02.png) no-repeat left top;
background-size: contain;
content: "";
z-index: -1;
}
.addCont01 .block {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}
.addCont01 .block::before {
position: absolute;
left: calc(100% - 4.5rem);
top: 9rem;
width: 19rem;
height: 19rem;
background: url(img/add01_bg_03.png) no-repeat left top;
background-size: contain;
content: "";
z-index: -1;
}

.list-page .block::before {
background: none;
}

.addCont01 .block::after {
position: absolute;
left: -18rem;
bottom: 18rem;
width: 19rem;
height: 19rem;
background: url(img/add01_bg_04.png) no-repeat left top;
background-size: contain;
content: "";
z-index: -1;
}

.list-page .block::after {
background: none;
}

.addCont01 .block::after {
display: block;
width: calc((100% - 4rem) / 3);
content: "";
}
.addCont01 .block .box {
width: calc((100% - 4rem) / 3);
padding: 3rem 2rem;
background: #fff;
border-radius: 1.5rem;
}

.addCont01.list-page .block .box {
width: calc((100% - 2rem) / 3);
padding: 3rem 1.5rem;
background: #fff;
border-radius: 1.5rem;
}

.addCont01 .block .box-head {
display: flex;
align-items: center;
justify-content: center;
margin: 0 0 2.5rem 0;
text-align: center;
}
.addCont01 .block .box-head .catch {
color: #ef5b24;
font-size: 2.3rem;
font-weight: 700;
line-height: 1.4;
}

.addCont01.list-page .block .box-head .catch {
color: #ef5b24;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
}


.addCont01 .block .box-head .catch span {
background: linear-gradient(transparent 60%, #ffff99 60%);
}
.addCont01 .block .box-body .name {
display: flex;
align-items: center;
justify-content: center;
margin: 0 0 2rem 0;
color: #514741;
font-size: 2.4rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}

.addCont01.list-page .block .box-body .name {
display: flex;
align-items: center;
justify-content: center;
margin: 0 0 2rem 0;
color: #514741;
font-size: 1.8rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}

.addCont01 .block .box-body .txt {
position: relative;
margin: 4rem 0 0 0;
padding: 2rem 1.5rem;
background: #f7f6f5;
}


.addCont01.list-page .block .box-body .txt {
font-size: 1.4rem;
}

.addCont01.list-page .block .box-body p:not([class]) > span:not([class]){
font-size: 1.4rem;
}

.addCont01 .block .box-body .fig,
.addCont01 .block .box-body .fig + .caption {
text-align: center;
}
.addCont01 .block .box-body .txt .ttl {
display: inline-block;
position: absolute;
left: 50%;
top: -1.6rem;
transform: translateX(-50%);
width: 18rem;
padding: 0.5rem 1rem 0.7rem 1rem;
background: #423934;
border-radius: 0.8rem;
color: #fff;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.addCont01 .block .box-body p:not([class]) {
margin: 1em 0 0 0;
}
.addCont01 .block .box-body p:not([class]) > span:not([class]) {
background: linear-gradient(transparent 60%, #fde182 60%);
font-size: 1.5rem;
font-weight: 700;
}
.addCont01 .block .box-body .btn-web {
margin: 3rem auto 0 auto;
}

.addCont01.list-page .block .box-body .btn-web a {
font-size: 1.5rem;
padding: 2rem 3rem;
background-size: 2rem auto;
}





















@media screen and (max-width: 480px) {
body {
width: 100%;
min-width: 100%;
font-size: 1.4rem;
line-height: 1.7em;
}

.pc {
display: none;
}

.pc_br {
display: none;
}

.sp {
display: block;
}

.sp_br {
display: block;
}

img {
max-width: 100%;
}

a:hover {
opacity: 1;
}


/*--------------------------------------
slider
---------------------------------------*/
.slideArea {
margin: 0 auto -30px;
}

.slideArea .slideinner {
margin: 0 auto;
position: relative;
box-sizing: border-box;
width: 100%;
padding: 0;
}

.slick-slider {
position: relative;
display: block;
-moz-box-sizing: border-box;
box-sizing: border-box;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}

.slick-list {
position: relative;
display: block;
overflow: hidden;
margin: 0;
padding: 0;
min-height: unset;
}

.slick-list:focus {
outline: none;
}

.slick-list.dragging {
cursor: pointer;
cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}

.slick-track {
position: relative;
top: 0;
left: 0;
display: block;
}

.slick-track::before,
.slick-track::after {
display: table;
content: "";
}

.slick-track::after {
clear: both;
}

.slick-loading .slick-track {
visibility: hidden;
}

.slick-slide {
display: none;
float: left;
height: 100%;
min-height: 1px;
}

[dir="rtl"] .slick-slide {
float: right;
}

.slick-slide img {
display: block;
}

.slick-slide.slick-loading img {
display: none;
}

.slick-slide.dragging img {
pointer-events: none;
}

.slick-initialized .slick-slide {
display: block;
}

.slick-initialized .slick-slide img {
width: auto;
height: 24rem;
}

.slick-initialized .slick-slide p {
display: block;
margin: 10px 0 5px 0;
line-height: 1.4;
padding: 0;
box-sizing: border-box;
text-align: center;
font-size: 12px;
font-size: 1.2rem;
}

.slick-loading .slick-slide {
visibility: hidden;
}

.slick-vertical .slick-slide {
display: block;
height: 68px;
box-sizing: border-box;
}

.slick-arrow.slick-hidden {
display: none;
}

.slider {
position: relative;
max-width: 94rem;
}

.slider img {
max-width: 100%;
height: auto;
}

.slider .slider-nav-wrap .slider-nav .slick-list {
display: block;
height: auto !important;
}

.slider .slider-nav-wrap .slider-nav .slick-track {
left: 0;
width: 100%;
opacity: 1;
position: relative;
}

.slider .slider-nav-wrap .slider-nav .slick-slide {
transition: opacity 0.3s ease;
opacity: 1;
padding: 7px;
}

.slider .slider-nav-wrap .slider-nav .slick-slide:hover {
opacity: 0.5;
}

.slider .slider-nav-wrap .slick-arrow {
position: absolute;
top: 50%;
left: inherit;
width: 0;
height: 0;
border-style: solid;
transform: translateY(-50%);
}

.slider .slider-nav-wrap .slick-prev {
right: 0;
border-width: 0;
border-color: transparent transparent transparent #444;
}

.slider .slider-nav-wrap .slick-next {
left: 0;
border-width: 0;
border-color: transparent #444 transparent transparent;
}

.slider .slider-for {
float: none;
width: 100%;
margin: 0 0 40px;
}

.slider .slider-for button.slick-prev {
position: absolute;
right: 2rem;
top: 45%;
transform: translateY(-50%);
background: url(img/arrow_slide_next.png) no-repeat;
background-size: contain;
width: 12px;
height: 20px;
z-index: 5;
}

.slider .slider-for button.slick-next {
position: absolute;
left: 2rem;
top: 45%;
transform: translateY(-50%);
background: url(img/arrow_slide_prev.png) no-repeat;
background-size: contain;
width: 12px;
height: 20px;
z-index: 5;
}

.slider .slider-nav-wrap {
position: static;
float: none;
width: 86%;
padding: 0;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
height: inherit;
margin: 0 auto;
}

.slider .slider-nav-wrap .slick-prev {
top: 50%;
left: -5%;
background: url(img/arrow_slide_thumb_left.png) center center no-repeat;
background-size: contain;
width: 12px;
height: 21px;
}

.slider .slider-nav-wrap .slick-next {
top: 50%;
left: auto;
right: -5%;
background: url(img/arrow_slide_thumb_right.png) center center no-repeat;
background-size: contain;
width: 12px;
height: 21px;
}

.slideArea .caption {
margin: 8px 0 10px !important;
}

.slider .slider-for .slider-prev {
left: 1rem;
}

.slider .slider-for .slider-next {
right: 1rem;
}


/*--------------------------------------
header
---------------------------------------*/
header {
position: relative;
margin: auto!important;
}
header .rightTxt {
width: 100%;
text-align: center;
}
#headNoteArea {
width: 100%;
text-align: center;
}
#headNoteArea {
height: 10rem;
background: url(img/mv_bg_06.png) no-repeat center center;
background-size: cover;
}
#headNoteArea .sitename {
padding: 1rem;
font-size: 1.4rem;
}
.out-frame {
position: relative;
width: 100%;
}
.out-frame.black::after {
position: fixed;
right: 0;
top: 0;
width: 100%;
height: 1000rem;
padding: 0;
background: #fff;
content: "";
opacity: 0.7;
transition: all 0.5s ease;
z-index: 1;
}
.out-frame::after {
position: fixed;
right: 0;
top: 0;
width: 100%;
background: #fff;
transition: all 0.5s ease;
content: "";
opacity: 0;
z-index: 1;
}
.header-frame {
position: relative;
width: 100%;
height: 6.4rem;
}
#sp_titArea .is-fixed {
position: fixed;
right: 1rem;
top: 3.4rem;
z-index: 99;
}
.menu-btn {
position: absolute;
right: 1rem;
top: 2.5rem;
width: 3.5rem;
height: 3.5rem;
background: url(img/sp-btn-menu_on.png) no-repeat left top;
background-size: 3.5rem;
z-index: 10;
}
.navOpenOut {
background: rgba(255,255,255,0.7);
padding: 3.4rem 1rem 0 0;
height: 8rem;
}
.navOpen {
float: right;
position: inherit;
right: 1rem;
top: inherit;
width: 3.5rem;
height: 3.5rem;
background: url(img/sp-btn-menu_off.png) no-repeat left top;
background-size: 3.5rem;
z-index: 10;
}
.fixed {
position: fixed;
width: 100%;
height: 100%;
}
.menu-btn img {
opacity: 1;
}
.black .menu-btn img {
opacity: 0;
}
.header-menu {
display: none;
position: fixed;
top: 0;
width: 100%;
height: 100%;
overflow-y: scroll;
z-index: 10;
}
.header-menu ul li a {
display: block;
padding: 1.5rem 2rem 1.5rem 1rem;
background: #fff url(img/arrow_black.png) no-repeat right 1rem center;
background-size: 6px auto;
border-bottom: 1px dotted #514741;
text-decoration: none;
font-size: 1.4rem;
line-height: 1.4;
text-decoration: none;
}
.header-menu ul.accordion li ul li:first-child a {
padding: 1.5rem 2rem 1.5rem 1rem;
}
.header-menu ul li.delete {
padding: 1rem 3rem 1rem 1rem;
background: #ef5b24 url(img/batu.png) no-repeat calc(50% + 3rem) center;
background-size: 1.9rem;
color: #fff;
font-size: 1.3rem;
text-align: center;
}
.header-menu ul.accordion ul {
display: none;
}
.header-menu ul.accordion .subCat ul.subList {
display: block;
}
.header-menu ul.accordion .tglMenu {
display: block;
padding: 1.5rem 3rem 1.5rem 1rem;
background: #f9f8f4 url(img/arrow_black_down.png) no-repeat right 1rem center;
background-size: auto 8px;
border-bottom: 1px solid #514741;
text-decoration: none;
line-height: 1.3;
font-weight: 700;
font-size: 1.4rem;
}
.header-menu ul.accordion .open {
background: #f9f8f4 url(img/arrow_black_up.png) no-repeat right 1rem center;
background-size: auto 8px;
}
.header-menu ul.accordion ul li a {
padding: 1.5rem 2rem 1.5rem 1rem;
background: #fff url(img/arrow_black.png) no-repeat right 1rem center;
background-size: 6px auto;
border-bottom: 1px dotted #514741;
}
.header-menu ul.accordion ul li.subCat a {
padding: 1.5rem 3rem 1.5rem 1rem;
}
.header-menu ul.accordion .subCat ul.subList li a {
padding: 1.5rem 3rem 1.5rem 1rem;
border-bottom: 1px dotted #514741;
}
.header-menu ul.accordion li ul li:last-child a {
border-bottom: none;
}


/*--------------------------------------
footer
---------------------------------------*/
footer {
box-sizing: border-box;
width: 100%;
padding: 1rem 0 0 0;
margin: 0;
}

footer a:hover {
text-decoration: none;
}

footer .areaInner {
box-sizing: border-box;
position: relative;
width: 100%;
margin: 0 auto;
padding: 0;
}

footer .areaInner .footBox {
margin: 0;
}

footer .areaInner .footBox .sttl a {
display: block;
box-sizing: border-box;
font-size: 1.4rem;
background: url(img/arrow_white.png) right 10px center no-repeat;
background-size: 8px auto;
padding: 10px 40px 10px 4%;
}

footer .areaInner .footBox .sttl.tglMenu a {
background: url(img/arrow_white_down.png) right 8px center no-repeat;
background-size: auto 8px;
}

footer .areaInner .footBox .sttl.open a {
background: url(img/arrow_white_up.png) right 8px center no-repeat;
background-size: auto 8px;
}

footer .areaInner .footBox .sttl {
/* border-bottom: 1px solid #231815; */
padding: 0;
margin: 0;
}

footer .areaInner .footBox .accChild {
display: none;
padding: 0;
margin: 0;
box-sizing: border-box;
}

footer .areaInner .footBox .accChild li {
float: none;
padding: 0;
margin: 0;
background: none;
display: block;
}

footer .areaInner .footBox .accChild li.sp a {
background-color: #fff;
background-size: 6px auto;
}

footer .areaInner .footBox .accChild li a {
display: block;
box-sizing: border-box;
background: #fff url(img/arrow_black.png) right 12px center no-repeat;
background-size: 6px auto;
border-bottom: 1px dotted #514741;
padding: 10px 3rem 10px 4%;
color: #333;
font-size: 1.3rem;
}

footer .areaInner .footBox .accChild li.subCat {
margin: 0;
}

footer .areaInner .footBox .accChild li.subCat a {
display: block;
box-sizing: border-box;
background: #fff url(img/arrow_black.png) right 12px center no-repeat;
background-size: 6px auto;
border-bottom: 1px dotted #514741;
padding: 10px 3rem 10px 4%;
}

footer .areaInner .footBox .accChild li.subCat:last-child li:last-child a {
border: none;
}

footer .areaInner .footBox .accChild .subList {
padding: 0;
margin: 0;
display: block;
}

footer .areaInner .footBox .accChild .subList li {
display: block;
}

footer .areaInner .footBox .accChild .subList li:first-child::before {
content: "";
}

footer .areaInner .footBox .accChild .subList li::after {
content: "";
}

footer .areaInner .footBox .accChild li.subCat::after {
content: "";
}

footer .areaInner .footBox .accChild .subList li a {
padding: 10px 40px 10px 14%;
background: url("img/arrow01_brown.png") right 12px center no-repeat;
background-size: 6px;
}

footer .areaInner .footBox .accChild li::after {
content: "";
}

footer .areaInner .footBox .accChild li:last-child::after {
content: "";
}

footer .areaInner .noticeArea {
box-sizing: border-box;
width: 90%;
margin: 30px auto 30px;
font-size: 12px;
font-size: 1.2rem;
line-height: 1.8em;
}

footer .areaInner .noticeArea p {
padding: 20px;
font-size: 12px;
font-size: 1.2rem;
}

footer .areaInner .noticeArea .botPrg {
text-align: center;
background: transparent;
padding: 0;
font-size: 10px;
font-size: 1rem;
margin: 10px 0 0;
}

footer .botArea {
padding: 0;
}

footer .botArea .botInner {
width: 100%;
}

footer p.copy {
margin: 0;
padding: 14px 15px 12px;
font-size: 12px;
font-size: 1.2rem;
line-height: 1.3;
text-align: center;
}

footer a {
text-decoration: none;
}

footer .botArea .botInner .smap {
display: none;
}

footer .areaInner .footBox .accChild .sp {
display: block;
}


/*--------------------------------------
pageTop
---------------------------------------*/
#page-top {
position: fixed;
bottom: 5rem;
right: 1rem;
z-index: 2;
width: 40px;
}

#page-top:hover {
opacity: 1;
}


/*--------------------------------------
pankuzu
---------------------------------------*/
.pankuzu-wrap {
margin: 0 0 3rem 0;
overflow: auto;
white-space: nowrap;
}
#pankuzu {
width: 100%;
padding: 0 1rem 0.5rem 1rem;
box-sizing: border-box;
font-size: 1.1rem;
word-break: break-all;
white-space: nowrap;
overflow-x: auto;
}
#pankuzu::before {
display: none;
}


/* ================== */
/*  メインコンテンツ  */
/* ================== */

#category,
#page {
width: 100%;
margin: 0 auto;
}

.baseBox {
float: none;
width: 100%;
padding: 0 1.5rem 5rem 1.5rem;
}

#category .baseBox,
#page .baseBox {
float: none;
width: 100%;
padding: 0 1.5rem 5rem 1.5rem;
}

.main p:not([class]) > span:not([class]),
.main li:not([class]) > span:not([class]),
.main td:not([class]) > span:not([class]) {
font-size: 1.5rem;
}


/*--------------------------------------
heading
---------------------------------------*/
.baseBox h1:not([class]) {
margin: 0 0 5rem 0;
font-size: 2.4rem;
}

.baseBox h2:not([class]) {
margin: 4rem 0 2rem 0;
padding: 1.5rem 1.5rem 1.5rem 6.5rem;
font-size: 2.1rem;
}
.baseBox h2:not([class])::before {
left: 0;
top: -1.8rem;
width: 6rem;
height: 6rem;
}

.baseBox h3:not([class]) {
margin: 3rem 0 2rem 0;
padding: 0 1.5rem 0.8rem 0;
font-size: 1.8rem;
}

.baseBox h4:not([class]),
.baseBox h5:not([class]),
.baseBox h6:not([class]) {
margin: 3rem 0 2rem 0;
padding: 0 1.5rem 0 1rem;
font-size: 1.6rem;
}

.baseBox h2:not([class]) a,
.baseBox h3:not([class]) a,
.baseBox h4:not([class]) a,
.baseBox h6:not([class]) a,
.baseBox h6:not([class]) a {
padding: 0 2.5rem 0 0;
background-size: 2rem auto;
}


/*--------------------------------------
title
---------------------------------------*/
.recommend,
.check {
margin: 3rem 0 2rem 1.5rem;
padding: 1.5rem 1.5rem 1.5rem 5.5rem;
font-size: 1.8rem;
}
.recommend::before,
.check::before {
left: -1.5rem;
width: 6.4rem;
height: 6.4rem;
font-size: 1.1rem;
}
.check::before {
content: "CHECK";
}
.recommend a,
.check a {
display: block;
padding: 0 3rem 0 0;
background: url(img/arrow01_brown.svg) no-repeat right center;
background-size: 24px auto;
color: inherit;
text-decoration: none;
}
.check a:hover {
text-decoration: none;
opacity: 0.7;
}

.rank {
margin: 3rem 0 2rem 1.5rem;
padding: 1.5rem 1.5rem 1.5rem 4rem;
background: #fef7d9;
color: #423934;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
}
.rank::before {
left: -1.5rem;
width: 4rem;
height: 4rem;
font-size: 1.8rem;
}
.rank::after {
width: 2.4rem;
height: 2.4rem;
}


/*--------------------------------------
lists
---------------------------------------*/
.main ul:not([class]) {
margin: 3rem 0;
}
.main ul:not([class]) li::before {
top: 0.7rem;
}

.main ol:not([class]) {
margin: 3rem 0;
}
.main ol li::before {
top: 0.3rem;
}


/*--------------------------------------
table
---------------------------------------*/
.main table {
width: 100%;
margin: 3rem auto;
border-top: 1px solid #514741;
}
.main table th {
display: block;
width: 100%;
border-top: none;
}
.main table td {
display: block;
width: 100%;
border-top: none;
}


/*--------------------------------------
float-wrap
---------------------------------------*/
.float-wrap {
margin: 4rem auto;
}
.float-wrap .fl {
width: 100%;
margin: 0 auto 2rem auto;
}
.float-wrap .fr {
width: 100%;
margin: 0 auto 2rem auto;
}
.float-wrap .center {
width: 100%;
margin: 0 auto 2rem auto;
}
.float-wrap p:not([class]) {
margin: 0;
}
.float-wrap .catch {
font-size: 1.8rem;
}


/*--------------------------------------
btns
---------------------------------------*/
.btn-tel {
display: none;
}

.btn-internal,
p.btn-internal {
max-width: 90%;
margin: 3rem auto;
}
.btn-internal a {
min-height: 6rem;
padding: 2rem 5rem;
background-size: 24px auto;
border-radius: 6rem;
font-size: 1.5rem;
}
.btn-internal a:hover {
box-shadow: none;
text-decoration: none;
opacity: 1;
transform: translate(7px, 7px);
}

.btn-web,
p.btn-web {
max-width: 90%;
margin: 3rem auto;
}
.btn-web a {
min-height: 6rem;
padding: 2rem 5rem;
background-size: 24px auto;
border-radius: 6rem;
font-size: 1.5rem;
}
.btn-web a:hover {
box-shadow: none;
text-decoration: none;
opacity: 1;
transform: translate(7px, 7px);
}

.btn-tel,
p.btn-tel {
display: block;
position: relative;
max-width: 90%;
margin: 3rem auto;
padding: 0;
text-align: center;
}
.btn-tel a {
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 100%;
min-height: 6rem;
margin: 0 auto;
padding: 2rem 5rem;
background: #52bd63 url(img/ico_tel.png) no-repeat 1.5rem center;
background-size: 3rem auto;
border-radius: 6rem;
box-shadow: 7px 7px 0 0 #126e37;
box-sizing: border-box;
color: #fff;
font-size: 1.5rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
text-decoration: none;
transition: 0.2s;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.btn-tel a:hover {
box-shadow: none;
text-decoration: none;
opacity: 1;
transform: translate(7px, 7px);
}

.btn-link,
p.btn-link {
position: relative;
max-width: 90%;
margin: 3rem auto;
padding: 0;
text-align: center;
}
.btn-link a {
display: flex;
align-items: center;
justify-content: center;
position: relative;
width: 100%;
min-height: 6rem;
margin: 0 auto;
padding: 2rem 5rem;
background: #fff url(img/arrow01_brown.svg) no-repeat right 2rem center;
background-size: 24px auto;
border: 2px solid #ff927c;
border-radius: 6rem;
box-sizing: border-box;
color: #000;
font-size: 1.5rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
text-decoration: none;
transition: 0.2s;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.btn-link a:hover {
text-decoration: none;
opacity: 1;
}


/*--------------------------------------
slider
---------------------------------------*/
.baseBox .slider {
max-width: 100%;
}
.baseBox .slideArea .slideinner {
width: 100%;
padding: 0;
}
.baseBox .slick-initialized .slick-slide img {
height: 24rem;
}
.baseBox .slider .slider-nav-wrap {
height: auto;
}
.baseBox .slider .slick-list {
min-height: auto;
}
.baseBox .slick-vertical .slick-slide {
height: 6.8rem;
}
.baseBox .slider .slider-nav-wrap .slider-nav .slick-list {
height: auto !important;
}


/*--------------------------------------
box-wrap
---------------------------------------*/
.box-wrap {
display: block;
}
.box-wrap .box {
width: 100%;
margin: 0 0 3rem 0;
padding: 2.5rem;
}
.box-wrap .box-head .ttl {
font-size: 2rem;
}


/*--------------------------------------
frame-wrap
---------------------------------------*/
.frame-wrap {
display: block;
}
.frame-wrap::after {
display: none;
content: none;
}
.frame-wrap .frame {
width: 100%;
margin: 0 0 3rem 0;
padding: 1.5rem;
}
.frame-wrap .frame-body table {
font-size: 1.5rem;
}
.frame-wrap .frame-body table th {
width: 100%;
padding: 1rem;
}
.frame-wrap .frame-body table td {
padding: 1rem;
}


/*--------------------------------------
accordion
---------------------------------------*/
.accordion-btn {
max-width: 90%;
width: 90%;
margin: 0 auto 3rem auto;
}
.accordion-btn {
min-height: 6rem;
padding: 2rem 5rem;
font-size: 1.5rem;
}
.accordion-btn::before {
right: 2rem;
width: 2rem;
}
.accordion-btn::after {
right: 2.8rem;
height: 2rem;
}


/*--------------------------------------
toc
---------------------------------------*/
.toc_parts {
width: 100%;
margin: 3rem 0 0 0;
padding: 1.5rem;
}
.toc_parts .ttl {
font-size: 1.8rem;
}
#toc {
margin: 1rem 0 0 0;
padding: 1rem 0 0 0;
}
#toc .chapter {
margin: 0;
padding: 0;
}
#toc .chapter .chapter-h {
margin: 1rem 0;
padding: 0 0 0 3rem;
font-size: 1.4rem;
line-height: 1.6;
}
#toc ul.chapter .chapter-h::before {
top: 1rem;
font-size: 1.8rem;
}
#toc li.chapter-h.chapter-h-three {
margin: 0.5rem 0 0.5rem 3rem;
}
#toc li.chapter-h.chapter-h-three::before {
top: 0.7rem;
width: 6px;
height: 6px;
}
#toc li.chapter-h-three + .chapter-h-two {
margin-top: 2rem;
}


/*--------------------------------------
related
---------------------------------------*/
#related-article.related-article01-frame {
margin: 4rem auto;
padding: 2rem;
}
#related-article .related-article01-title {
font-size: 1.8rem;
}
#related-article .related-article01-list {
margin: 1rem 0 0 0;
padding: 0 1rem;
}
#related-article .related-article01-list li {
padding: 0 0 0 2rem;
font-size: 1.4rem;
}
#related-article .related-article01-list li::before {
top: 0.5rem;
width: 1rem;
height: 1rem;
}
#related-article .related-article01-list a:hover {
opacity: 1;
}


/*--------------------------------------
banner
---------------------------------------*/
.block-banner {
display: none !important;
}


/*--------------------------------------
addCont
---------------------------------------*/
.addInner {
width: 100%;
padding: 0 1.5rem;
}

.headArea {
padding: 0;
}

.headArea .titL {
font-size: 2.4rem;
}
.headArea .titL a {
padding: 0 3.5rem 0 0;
background-size: 24px auto;
}

.headArea .addTxt {
margin: 0 0 3rem 0;
}
.headArea p.addTxt span {
font-size: 1.5rem;
}
	


/*--------------------------------------
addCont01
---------------------------------------*/
.addCont01 {
padding: 5rem 0 10rem 0;
}
.addCont01 .addInner::before {
left: 0;
top: -8.5rem;
width: 10rem;
height: 10rem;
}
.addCont01 .addInner::after {
left: auto;
right: 1rem;
bottom: -9rem;
width: 10rem;
height: 10rem;
}
.addCont01 .headArea::before {
top: -7rem;
width: 10rem;
height: 10rem;
right: -1rem;
}
.addCont01 .block {
display: block;
}
.addCont01 .block::before {
display: none;
content: none;
}
.addCont01 .block::after {
left: 0;
bottom: -11rem;
width: 10rem;
height: 10rem;
}

.addCont01 .block .box {
width: 100%;
margin: 0 0 3rem 0;
}
.addCont01 .block .box-head .catch {
font-size: 2.6rem;
}
.addCont01 .block .box-body .txt .ttl {
width: 20rem;
}
.addCont01 .block .box-body .btn-tel {
margin: 2.5rem auto 0 auto;
}

	.headArea .titL01 {
    font-size: 2.6rem;
}
	
.list-page .headArea .titL01 {
    font-size: 2.4rem;
}
	
/*--------------------------------------
addCont01 list-page
---------------------------------------*/
	.addCont01.list-page{
padding: 5rem 0 3rem 0;
}
	
.addCont01.list-page .addInner::before {
left: 0;
top: -8.5rem;
width: 10rem;
height: 10rem;
}
.addCont01.list-page .addInner::after {
left: auto;
right: 1rem;
bottom: -9rem;
width: 10rem;
height: 10rem;
}
.addCont01.list-page .headArea::before {
top: -9rem;
width: 10rem;
height: 10rem;
right: -2rem;
}
.addCont01.list-page .block {
display: block;
}
.addCont01.list-page .block::before {
display: none;
content: none;
}
.addCont01.list-page .block::after {
left: 0;
bottom: -11rem;
width: 10rem;
height: 10rem;
}

.addCont01.list-page .block .box {
width: 100%;
margin: 0 0 3rem 0;
}
.addCont01.list-page .block .box-head .catch {
font-size: 2.6rem;
}
.addCont01.list-page .block .box-body .txt .ttl {
width: 20rem;
}
.addCont01.list-page .block .box-body .btn-tel {
margin: 2.5rem auto 0 auto;
}

	.headArea.list-page .titL01 {
    font-size: 2.6rem;
}
	
	

}
