@charset "utf-8";

.sec01 {
background: url("img/sec01-bk.png") repeat top;
}

.sec01-l-center {
padding-top: 10rem;
padding-bottom: 10rem;
max-width: 100rem;
margin-right: auto;
margin-left: auto;
}

.sec01-l-center .l-grid-three {
margin-top: 4rem;
}
.sec01-l-center .l-grid-three a{
text-decoration:none;
}
.sec01-l-center .l-grid-three a .onb-iconbox03-frame:hover{
background:#ffefa7;
}

.sec01 .section-title05 {
background-color: #ffffff;
border: 3px solid #000;
box-shadow: 8px 8px 0px 0px #000000;
}

.sec02 {
background: url("img/sec02-bk2.png") no-repeat bottom center, url("img/sec02-bk.png") repeat top;
}

.sec02-l-center {
padding-top: 10rem;
padding-bottom: 10rem;
max-width: 100rem;
margin-right: auto;
margin-left: auto;
}

.sec02-l-center .btn-link {
margin-top: 3rem;
}

.sec02 .section-title05 {
background-color: #ffffff;
border: 3px solid #000;
box-shadow: 8px 8px 0px 0px #000000;
}

.sec03 {
background: url("img/sec03-bk.png") repeat top;
}

.sec03-l-center {
padding-top: 4rem;
padding-bottom: 10rem;
max-width: 100rem;
margin-right: auto;
margin-left: auto;
}
.sec03-l-center .onb-com-box-catch {
    font-size: 1.6rem;
    color: #000000;
    text-align: center;
    background: #fff9db;
    padding: 0.5rem;
}

.sec03-l-center .l-grid-two-large {
margin-top: 4rem;
}

.sec03 .column-small {
margin-top: 2rem;
padding-top: 0;
border: 2px dotted #000;
border-radius: 15px;
}
.sec03-i{
	text-align:center;
}
.sec03-i img{
	max-height:160px;
	width:auto;
}

.sec03 .column-small p:not([class]) span {
font-weight: bold;
color: #cb2457;
background: none;
}

.sec03 .title-catch span {
font-size: 2.2rem;
background: linear-gradient(transparent 70%, #faee2b 70%);
color: #000;
}

#low-page .sec03 h2:not([class]) {
background-color: #ffffff;
border: 3px solid #000;
box-shadow: 8px 8px 0px 0px #000000;
}

.sec03 .section-title05 span {
font-size: 2rem;
background: linear-gradient(transparent 70%, #faee2b 70%);
}

.sec03 .btn-web, .sec03 .btn-ancher, .sec03 .btn-internal {
margin: var(--s3) auto;
}

.sec04 {
background: url("img/sec04-bk.png") repeat top #ffddd3;
background-size: 800px;
}

.sec04-l-center {
padding-top: 10rem;
padding-bottom: 10rem;
max-width: 100rem;
margin-right: auto;
margin-left: auto;
}

.sec04-l-center .column-medium {
margin-top: 4rem;
border: 2px dotted #000;
border-radius: 15px;
}

#low-page .sec04-l-center .column-medium table {
margin-block: 0;
max-width:800px;
margin-left:auto;
margin-right:auto;
}

.sec04 .onb-center-img {
margin-top: 4rem;
}

.sec04 .l-grid-two-large {
margin-bottom: 2rem;
}

#low-page .sec04 ul:not([class]) {
margin-bottom: 0;
margin-top: 0;
}

#low-page .sec04 .l-onb-access-table table {
margin-block: 0;
font-size:1.4rem;
}

#low-page .sec04 h2:not([class]) {
background-color: #ffffff;
border: 3px solid #000;
box-shadow: 8px 8px 0px 0px #000000;
}

#low-page .sec04 h4:not([class]) {
text-align: center;
}

.sec04 .column-small {
border: none;
}

.sec04 th {
width: 50%;
}
.sec04 td {
text-align:center;
}

.sec04 .right-img img {
border-radius: 50px;
}

.sec05 {
background: url("img/sec02-bk2.png") no-repeat bottom center, url("img/sec02-bk.png") repeat top;
}

.sec05-l-center {
padding-top: 10rem;
padding-bottom: 10rem;
max-width: 100rem;
margin-right: auto;
margin-left: auto;
}

.sec05-l-center .l-grid-three {
margin-top: 2rem;
}

#low-page .sec05 h2:not([class]) {
background-color: #ffffff;
border: 3px solid #000;
box-shadow: 8px 8px 0px 0px #000000;
}
.sec05 .more-content .com-box-title{
min-height:90px;
}
.sec05 .more-content .com-box-text p{
min-height:210px;
}

@media screen and (max-width: 767px) {
.sec01 {
padding-right: 1rem;
padding-left: 1rem;
}

.sec01-l-center {
padding-top: 2rem;
padding-bottom: 6rem;
}
.sec01-l-center .l-grid-three a:hover{
opacity:1.0;
}

.sec02 {
padding-right: 1rem;
padding-left: 1rem;
background: url("img/sec02-bk2-sp.png") no-repeat bottom center, url("img/sec02-bk.png") repeat top;
background-size: 100vw;
padding-bottom: 13rem;
}

.sec02-l-center {
padding-top: 2rem;
padding-bottom: 6rem;
}

.sec02 .l-grid-two-large {
display: block;
}

.sec02 .onb-casebox02-frame {
margin-top: 2.5rem;
}

.sec03 {
padding-right: 1rem;
padding-left: 1rem;
}

.sec03-l-center {
padding-top: 2rem;
padding-bottom: 6rem;
}

.sec03 .section-title05 span {
font-size: 1.8rem;
}

.sec04 {
padding-right: 1rem;
padding-left: 1rem;
}

.sec04-l-center {
padding-top: 2rem;
padding-bottom: 6rem;
}

#low-page .sec04 h4:not([class]) {
font-size: 2rem;
}

.sec04 .l-grid-three {
display: block;
}

.sec04 .l-grid-three .column-small {
padding: 0;
}

.sec04 th {
width:auto;
}
.sec04-l-center .column-medium {
margin-bottom:8rem;
}
.sec04-l-center .column-medium:last-child {
margin-bottom:0rem;
}

.sec05 {
padding-right: 1rem;
padding-left: 1rem;
background: url(img/sec02-bk2-sp.png) no-repeat bottom center, url(img/sec02-bk.png) repeat top;
background-size: 100vw;
padding-bottom: 10rem;
}

.sec05-l-center {
padding-top: 2rem;
padding-bottom: 6rem;
}
.sec05 .more-content .com-box-title{
min-height:unset;
}
.sec05 .more-content .com-box-text p{
min-height:unset;
}
.sec04-l-center .column-medium table th{
width:50%;
}
}


/* ---------------------------------------------
navigation02 ※TOP、下層共通
--------------------------------------------- */
.header-area-upper {
padding: var(--s1);
text-align: right;
}

.header-title {
font-size: 1.2rem;
display: inline-block;
position: relative;
margin-right:6rem;
}

.header-title::before {
content: "PR";
padding: .2rem;
color: #fff;
background-color: #333;
transform: translateY(-50%);
position: absolute;
top: 50%;
left: -2.4rem;
}

.header-title a {
text-decoration: none;
}

.header-title a:hover {
text-decoration: underline;
}

.gnavi-btn-close {
display: none;
}

.toggle-content {
display: none;
}

.gnavi-ctrl {
transition: opacity 0.6s, visibility 0.6s;
opacity: 0;
visibility: hidden;
}

.gnavi-ctrl.is-show {
opacity: 1;
visibility: visible;
}

#low-header .gnavi-ctrl {
opacity: 1;
visibility: visible;
}

.gnavi-btn {
width: var(--s7);
height: var(--s6);
background: #000;
display: block;
position: fixed;
top: 0;
right: 0;
z-index: 200;
cursor: pointer;
}

.gnavi-btn span {
width: var(--s4);
height: 0.2rem;
display: inline-block;
background: #fff;
position: absolute;
left: 1.2rem;
transform: translate(0, -50%);
transition: transform 0.4s, opacity 0.4s;
}

.gnavi-btn span:nth-of-type(1) {
top: 1.7rem;
}

.gnavi-btn span:nth-of-type(2) {
top: 2.4rem;
}

.gnavi-btn span:nth-of-type(3) {
top: 3.1rem;
}

.gnavi-btn.is-active span:nth-of-type(1) {
transform: translateY(0.7rem) rotate(-45deg);
}

.gnavi-btn.is-active span:nth-of-type(2) {
opacity: 0;
}

.gnavi-btn.is-active span:nth-of-type(3) {
transform: translateY(-0.7rem) rotate(45deg);
}

.gnavi-btn-close {
width: 80%;
margin: 0 auto;
padding: var(--s2);
background: #333;
display: block;
text-align: center;
}

.gnavi-btn-close__inner {
padding: 0 0 0 var(--s3);
display: inline-block;
color: #fff;
font-weight: 700;
position: relative;
}

.gnavi-btn-close__inner::before {
content: "";
width: 1em;
height: 0.2rem;
background: #fff;
position: absolute;
top: 50%;
left: 0;
transform: translate(0, -50%) rotate(45deg);
}

.gnavi-btn-close__inner::after {
content: "";
width: 1em;
height: 0.2rem;
background: #fff;
position: absolute;
top: 50%;
left: 0;
transform: translate(0, -50%) rotate(135deg);
}

.gnavi-area {
width: 100%;
max-width: 37.5rem;
height: 100vh;
padding: var(--s12) var(--s1) var(--s10);
display: block;
background: #F5F5F5;
overflow-x: hidden;
overflow-y: auto;
position: fixed;
top: 0;
right: 0;
z-index: 100;
transform: translateX(100%);
transition: transform 0.8s ease, opacity 0.8s ease;
opacity: 0;
}

.gnavi-title {
min-height: var(--s6);
margin: 0 var(--s8);
display: flex;
align-items: center;
justify-content: center;
font-size: 1.6rem;
font-weight: 700;
text-align: center;
line-height: 1.5;
}

.gnavi-pc {
display: none;
}

.gnavi-list {
border-bottom: 1px solid #333;
position: relative;
}

.gnavi-list li {
padding-left: 0;
}

.gnavi-list__item::before {
display: none;
}

.gnavi-list__link {
width: 100%;
margin: 0 auto;
padding: var(--s2) var(--s4) var(--s2) var(--s2);
border-top: 1px solid #333;
display: block;
font-weight: 700;
line-height: 2;
text-decoration: none;
position: relative;
}

.gnavi-list__link::after {
content: "";
width: 1.4rem;
height: 1.4rem;
background: url("img/arrow-01-black-right.svg") no-repeat center/100% auto;
position: absolute;
top: 50%;
right: var(--s2);
transform: translate(0, -50%) rotate(0);
transition: transform 0.3s;
}

.gnavi-list__link--toggle::after {
background-image: url("img/arrow-01-black-down.svg");
}

.gnavi-list__link--toggle.is-open::after {
transform: translate(0, -50%) rotate(180deg);
}

.gnavi-list__sub {
width: 100%;
background: #fff;
}

.gnavi-list__low .gnavi-list__link {
padding: var(--s2) var(--s4) var(--s2) var(--s4);
}

.gnavi-list__low .gnavi-list__link::after {
content: "└";
background: none;
transform: translateY(-50%);
position: absolute;
top: 40%;
left: 1rem;
}

.is-gnavi-open .gnavi-area {
opacity: 1;
transform: translateX(0);
}


/* ---------------------------------------------
related-article01(関連記事)
--------------------------------------------- */
.related-article01-frame {
border: 4px solid #DBDBDB;
border-radius: 20px;
margin: var(--s6) auto var(--s10);
padding: var(--s3);
background: #fff;
position: relative;
}

.related-article01-title {
padding: var(--s2) var(--s2) var(--s2) var(--s8);
color: #333;
font-size: 2.2rem;
font-weight: bold;
line-height: 1;
background: url("./img/dummy-icon.png") no-repeat left center;
background-size: 5rem auto;
position: relative;
border-bottom: 2px dotted #dbdbdb;
}

.related-article01-list {
padding: var(--s2) 0 var(--s2) var(--s2);
font-weight: 700;
}

.related-article01-list li {
margin: 0 0 0 var(--s2);
padding-left: 1.5em;
font-size: 100%;
line-height: 1.7;
position: relative;
}

.related-article01-list li + li {
margin-top: 10px;
}

.related-article01-list li::before {
content: "";
width: 1.6rem;
height: 1.6rem;
border-radius: 50%;
background-color: #faee2b;
position: absolute;
top: .6rem;
left: 0;
}

.related-article01-list a {
display: block;
}

.related-article01-list a:hover {
opacity: 0.6;
}

.relations-box.relations-box--column {
display: flex;
gap: 10px;
}

.relations-box__pic {
flex: 0 0 150px;
}

@media screen and (max-width: 767px) {
.related-article01-list {
padding: 2rem 0 0 0;
}

.related-article01-list li {
margin-left: 0;
}

.relations-box__pic {
flex: 0 0 100px;
}
}

.section-title05 {
width: 100%;
margin: 5rem auto 7rem;
padding: var(--s4) var(--s12);
font-size: 3.2rem;
font-weight: 700;
line-height: 1.5;
text-align: center;
background-color: #fff;
position: relative;
border-radius: 15px;
border: 3px solid #000;
box-shadow: 8px 8px 0px 0px #000000;
}

.section-title05 a {
display: block;
padding-right: var(--s4);
padding-left: var(--s4);
text-decoration: none;
background: url(./img/arrow-01-black-right.svg) no-repeat center right 1rem / auto 0.8em;
}

.section-title05 a:hover {
opacity: 0.6;
}

.section-title05::before {
content: "";
width: 12rem;
height: 12rem;
border-radius: 50%;
background: url("img/section-title05-i1.png") repeat top;
position: absolute;
top: -6rem;
left: 0;
z-index: 3;
border-radius: 100px;
}

.section-title05::after {
content: "";
width: 12rem;
height: 12rem;
border-radius: 50%;
background: url("img/section-title05-i2.png") repeat top;
position: absolute;
bottom: -6rem;
right: 0;
z-index: 3;
border-radius: 100px;
}

@media screen and (max-width: 767px) {
.section-title05 {
padding: var(--s2);
font-size: 2.4rem;
margin: 4rem auto 4rem;
}

.section-title05::before,
.section-title05::after {
width: 5rem;
height: 5rem;
}

.section-title05::before {
top: -3rem;
}

.section-title05::after {
bottom: -3rem;
}

.header-area-upper {
text-align: left;
padding-left: 3rem;
}
}

.onb-iconbox03-frame {
padding: var(--s4) var(--s2) var(--s2);
background-color: #fff;
border-radius: 15px;
position: relative;
border: 2px dashed #000;
}

.onb-iconbox03-frame p {
font-size: 1.4rem;
}

.onb-iconbox03-sub {
text-align: center;
position: absolute;
top: -1.5rem;
transform: translateX(-50%);
left: 50%;
}

.onb-iconbox03-sub span {
padding: var(--s1) var(--s2);
display: inline-block;
background-color: #faee2b;
border-radius: 50vh;
}

.onb-iconbox03-img {
padding-left: var(--s7);
padding-right: var(--s7);
}

.onb-iconbox03-catch {
padding-bottom: 2rem;
font-size: 2rem;
font-weight: 700;
line-height: 1.5;
color: #000;
text-align: center;
background: url(./img/arrow-01-black-right.svg) no-repeat center right 2rem / auto 0.8em;
}

.onb-iconbox03-catch span {
color: #e31b58;
font-size: 2.4rem;
}

.onb-iconbox03-catch a {
display: block;
padding-right: 4rem;
padding-left: 4rem;
text-decoration: none;
background: url(./img/arrow-01-black-right.svg) no-repeat center right 2rem / auto 0.8em;
}

.onb-iconbox03-catch a:hover {
opacity: 0.6;
}

.onb-iconbox03-caption {
text-align-last: left;
}

@media screen and (max-width: 767px) {
.onb-iconbox03-img {
padding-left: var(--s11);
padding-right: var(--s11);
}
}

.onb-casebox02-frame {
margin-top: 2rem;
padding: var(--s4);
background: #fff;
border-radius: 20px;
position: relative;
border: 2px dashed #000;
}

.onb-casebox02-sub {
padding: var(--s1) var(--s3);
background-color: #FFD22D;
color: var(--site-color05);
font-size: 2rem;
font-weight: bold;
border-radius: 5rem;
transform: translateX(-50%);
position: absolute;
top: -2rem;
left: 50%;
}

.l-onb-casebox02 {
display: flex;
flex-wrap: wrap;
gap: var(--s2);
}

.l-onb-casebox02__side {
width: calc((100% - var(--s3))*.2);
}

.l-onb-casebox02__main {
width: calc((100% - 0)*.7);
}

.onb-casebox02-imgcap {
margin-top: 1rem;
text-align: center;
font-size: 1.2rem;
}

.onb-casebox02-catch {
color: var(--site-color01);
font-size: 1.9rem;
line-height: 1.5;
font-weight: 700;
margin-top: 2.5rem;
}

.onb-casebox02-catch a {
display: block;
padding-right: var(--s4);
text-decoration: none;
background: url(./img/arrow-01-black-right.svg) no-repeat center right 0.5rem / auto 0.8em;
}

.onb-casebox02-catch a:hover {
opacity: 0.6;
}

.onb-casebox02-caption {
text-align: left;
}


/*------------------------------------------
3box column settings
*/
.column-small {
padding: var(--s2);
border: 1px solid var(--site-color09);
background: #fff;
}

.thb-box-full {
width: calc(100% + var(--s4));
margin-left: calc(var(--s2) * -1);
}

.arrow-title {
margin-bottom: 2.3rem;
padding: var(--s2);
font-size: 1.8rem;
font-weight: 700;
background-color: #000;
text-align: center;
line-height: 1.5;
position: relative;
color: #fff;
border-radius: 15px 15px 0 0;
}

.arrow-title::after {
content: "";
width: 0;
height: 0;
border-top: 1.5rem solid transparent;
border-left: 1.5rem solid transparent;
border-right: 1.5rem solid #000;
border-bottom: 1.5rem solid #000;
transform: translateX(-50%) rotate(45deg);
position: absolute;
left: 50%;
bottom: -1.3rem;
}

.arrow-title-sub {
padding: var(--s1);
margin-bottom: .8rem;
background-color: #fff;
color: #000;
border-radius: 16px;
font-size: 2rem;
line-height: 1;
display: inline-block;
}

.arrow-title-small {
font-size: 1.8rem;
}

.title-catch {
padding: .8rem .8rem 1.6rem .8rem;
font-size: 2.1rem;
font-weight: 700;
text-align: center;
line-height: 1.5;
color: var(--site-color01);
}

.title-catch span {
font-size: 1.6rem;
}

.m-title02 {
padding: var(--s2);
font-size: 1.8rem;
font-weight: 700;
line-height: 1.5;
text-align: center;
}


/*------------------------------------------
1box column settings
*/
.column-medium {
padding: var(--s4);
border: 1px solid var(--site-color09);
background: #fff;
}

.onb-box-full {
width: calc(100% + var(--s8));
margin-left: calc(var(--s4) * -1);
}

@media screen and (max-width: 767px) {
.column-medium {
padding: var(--s2);
}

.onb-box-full {
width: calc(100% + var(--s4));
margin-left: calc(var(--s2) * -1);
}

.l-onb-casebox02 {
flex-wrap: nowrap;
}

.onb-casebox02-catch {
margin-top: 0;
}
}

.onb-icon-title-frame {
padding: var(--s4);
background-color: #000;
border-radius: 20px;
position: relative;
margin: 0 3rem;
color: #fff;
}

.onb-icon-title-icon {
width: 12rem;
height: 12rem;
overflow: hidden;
position: absolute;
top: -5rem;
left: 0;
}

.onb-icon-title-icon img {
width: 100%;
}

.onb-icon-title {
text-align: center;
color: #fff;
font-size: 3.2rem;
font-weight: 700;
line-height:1.3;
}

.onb-icon-title small {
font-size: 2.1rem;
}

.onb-icon-title-catch {
padding: var(--s1);
background-color: #fff;
color: #000;
border-radius: 100px;
font-size: 2rem;
line-height: 1;
display: inline-block;
}
.onb-icon-title-catch02 {
font-size:2.2rem;
}

@media screen and (max-width: 767px) {
.onb-icon-title-frame {
padding: var(--s2);
}

.onb-icon-title {
font-size: 2.2rem;
}
.onb-icon-title-catch02 {
font-size:1.8rem;
}

.onb-icon-title small {
font-size: 1.6rem;
}

.onb-icon-title-catch {
padding: 1rem 1.5rem;
font-size: 1.6rem;
line-height: 1.2;
}

.onb-icon-title-icon {
width: 6rem;
height: 6rem;
position: absolute;
top: -3rem;
left: -3rem;
border-width: 2px;
}
}

.onb-center-img {
max-width: 64%;
margin: 0 auto;
}

@media screen and (max-width: 767px) {
.onb-center-img {
max-width: 100%;
}
}

.onb-iconbox02-frame {
padding: var(--s2);
background-color: #fff9db;
border-radius: 2rem;
margin-bottom: 2rem;
}

.onb-iconbox02-catch {
padding: var(--s2) var(--s1) var(--s3) var(--s7);
font-size: 2rem;
font-weight: 700;
line-height: 1.5;
border-bottom: 1px dashed #707070;
background: url('./img/icon-dummy.png') no-repeat center left;
background-size: 4.8rem auto;
color: #000;
}

.onb-iconbox02-caption {
text-align-last: left;
}

@media screen and (max-width: 767px) {
.onb-iconbox02-catch {
padding: var(--s2) var(--s1) var(--s3) var(--s8);
background: url('./img/icon-dummy.png') no-repeat top var(--s2) left;
background-size: 50px auto;
font-size: 1.8rem;
}
}

.onb-com-box-title {
padding: var(--s1);
background-color: #C9C9C9;
line-height: 1.5;
}

.onb-com-box-area {
padding: var(--s3);
border: 3px solid #fff76f;
border-radius: 15px;
}

.onb-com-box-area .caption {
text-align: left;
}

.onb-com-box-img {
width: 11.2rem;
margin-left: var(--s2);
margin-bottom: var(--s2);
float: right;
}

.onb-com-box-img span {
margin-top: var(--s1);
display: block;
font-size: 1.2rem;
text-align: center;
}

.onb-com-box-catch {
margin-bottom: var(--s2);
font-size: 2.0rem;
font-weight: 700;
line-height: 1.6;
color: #cb2457;
}

.thb-text-list {
padding: var(--s2);
border: 1px solid #707070;
border-radius: 20px;
line-height: 1.5;
font-weight: bold;
display: flex;
align-items: center;
gap: var(--s2);
}

.thb-text-list__left {
width: 3em;
}

.thb-text-list__right {
width: calc(100% - 3em);
font-size: 1.8rem;
}

.thb-text-list__right em {
font-size: 2.4rem;
font-style: normal;
font-weight: 700;
color: var(--site-color01);
}

.l-onb-access-table {
display: flex;
gap: var(--s2);
}

.l-onb-access-table__side {
width: calc((100% - var(--s2))*.4);
}

.l-onb-access-table__main {
width: calc((100% - var(--s2))*.6);
}

.onb-access-table {
border-collapse: collapse;
}

.onb-access-table th,
.onb-access-table td {
padding: var(--s2);
border: 1px solid #707070;
}

.onb-access-table th {
width: 34%;
background-color: #f5eece;
vertical-align: middle;
text-align: center;
font-weight: bold;
}

@media screen and (max-width: 767px) {
.l-onb-access-table {
flex-direction: column;
}
.onb-com-box-img {
width: 7rem;
margin-left: var(--s1);
margin-bottom: var(--s1);
}

.l-onb-access-table__side,
.l-onb-access-table__main {
width: 100%;
}

.onb-com-box-catch {
font-size: 1.8rem;
}
}

.right-img-box {
display: flow-root;
}

.right-img {
width: 40%;
margin-left: var(--s3);
padding-bottom: var(--s1);
float: right;
}

.right-img-catch {
margin-bottom: 1.6rem;
color: #cb2457;
font-size: 2.0rem;
font-weight: 700;
line-height: 1.5;
}

@media screen and (max-width: 767px) {
.right-img {
width: 100%;
margin-left: 0;
padding-bottom: var(--s2);
float: inherit;
text-align: center;
}

.right-img-catch {
text-align: center;
margin-top: 1.0rem;
font-size: 1.8rem;
}
}

.com-box-frame {
border: 2px dotted #333;
border-radius: 2rem;
background:#fff;
max-width:323px;
}

.com-box-title {
padding: 1.5rem;
background-color: #ffdee4;
border-radius: 1.5rem 1.5rem 0 0;
font-size: 2.0rem;
font-weight: 700;
line-height: 1.5;
text-align: center;
border-radius: 2rem 2rem 0 0;
display: flex;
align-items: center;
}

.com-box-title a {
line-height: 1.5;
display: block;
padding-right: var(--s4);
padding-left: var(--s4);
text-decoration: none;
background: url(./img/arrow-01-black-right.svg) no-repeat center right 1rem / auto 0.8em;
width: 100%;
}

.com-box-title a:hover {
opacity: 0.6;
}

.com-box-area {
padding: var(--s2);
display: flow-root;
background: #fff;
border-radius: 2rem;
}

.com-box-img {
width: 8.2rem;
margin-right: var(--s2);
margin-bottom: var(--s2);
float: left;
}

.com-box-img span {
margin-top: var(--s1);
display: block;
font-size: 1.2rem;
text-align: center;
}

.com-box-catch {
margin-bottom: var(--s2);
font-weight: 700;
line-height: 1.5;
color: var(--site-color01);
}

.thb-table {
line-height: 1.4;
border-collapse: collapse;
border: 1px solid #B0A8A7;
font-size:1.4rem;
}

.thb-table th,
.thb-table td {
padding: var(--s1);
border: 1px solid #B0A8A7;
}

.thb-table th {
width: 30%;
background-color: #f5eece;
text-align: center;
}

.gmap-area-frame {
max-width: 72rem;
margin: 0 auto;
}

.gmap-area {
width: 100%;
height: 0;
padding-bottom: 66%;
overflow: hidden;
position: relative;
border: 1px solid #707070;
}

.gmap-area iframe {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}

.acc-more-btn {
max-width: 32rem;
margin: var(--s5) auto;
position: relative;
z-index: 1;
}

.acc-more-btn span {
width: 100%;
margin: var(--s5) auto;
padding: 2rem 6rem 2rem 6rem;
border: 2px solid #333;
border-radius: 4rem;
background: #fff url('./img/accordion-plus.svg') no-repeat 95% center;
display: block;
text-align: center;
font-weight: 700;
transform: translate(0, 0);
transition: transform 0.3s;
cursor: pointer;
z-index: 1;
}

.acc-more-btn::before {
content: "";
display: block;
width: 100%;
height: 100%;
background-color: #000;
border-width: 0 1px 1px 0;
transform: translate(.6rem, .6rem);
border-radius: 4rem;
position: absolute;
left: 0;
bottom: 0;
z-index: -1;
}

.acc-more-btn:hover span {
transform: translate(.6rem, .6rem);
}

.acc-more-btn.is-open span {
background: #fff url('./img/accordion-minus.svg') no-repeat 95% center;
}

.more-content {
display: none;
}

@media screen and (max-width: 767px) {
.acc-more-btn span {
transition: inherit;
transform: none;
}

.acc-more-btn:hover span {
transform: none;
}
.com-box-frame {
max-width:unset;
}
}

.onb-index01-frame {
width: 100%;
border: 4px solid #DBDBDB;
border-radius: 20px;
margin-bottom: 3rem;
}

.onb-index01-wrap {
margin: 0 auto;
padding: var(--s1) var(--s3);
background-color: transparent;
position: relative;
}

.onb-index01-title {
padding: var(--s2) var(--s2) var(--s2) var(--s6);
color: #333;
font-size: 2.1rem;
font-weight: bold;
line-height: 1;
position: relative;
cursor: pointer;
}

.onb-index01-title::before {
content: "";
position: absolute;
display: block;
background: #db9eb0;
border-radius: 15px;
width: 7px;
height: 28px;
top: 0;
bottom: 0;
left: 0;
margin: auto;
}

.onb-index01-title::after {
content: "";
width: 2.7rem;
height: 2.7rem;
background: url('./img/accordion-plus.svg') no-repeat 0 0 /100% auto;
position: absolute;
top: 50%;
right: 1.8rem;
transform: translate(0, -50%);
}

.onb-index01-title.is-open::after {
background-image: url('./img/accordion-minus.svg');
}

.onb-index01-chapter {
padding: var(--s2) var(--s2) var(--s2) var(--s4);
font-weight: 700;
border-top: 2px dotted #dbdbdb;
}

.onb-index01-chapter-h {
margin: 0 0 0 var(--s2);
font-size: 100%;
line-height: 1.7;
position: relative;
}

.onb-index01-chapter-h a {
display: block;
text-decoration: none;
}

.onb-index01-chapter-h a:hover {
opacity: .6;
}

.onb-index01-chapter-h-two {
margin-left: var(--s2);
position: relative;
}

.onb-index01-chapter-h-three {
margin-left: var(--s4);
position: relative;
}

.onb-index01-chapter-h-two::before,
.onb-index01-chapter-h-three::before {
position: absolute;
top: 0;
left: -1.5em;
}

.onb-index01-chapter-h-two::before {
content: "";
width: 1.2rem;
height: 1.2rem;
border-radius: 2rem;
background-color: #faee2b;
transform: translateY(-50%);
top: .8em;
}

.onb-index01-chapter-h-three::before {
content: "└";
}

.more-content {
display: none;
}

.onb-index01-content {
background-color: #fff;
margin-top: 1rem;
}

.pc-fix-banner04 {
position: fixed;
right: 0;
bottom: 14rem;
z-index: 50;
}

.pc-fix-banner04-color1 {
background-color: #ffeb90;
}

.pc-fix-banner04-color2 {
background-color: #ffdee4;
}

.pc-fix-banner04-text {
padding: var(--s2);
color: #fff;
position: relative;
font-weight: bold;
border-radius: 100px 0 0 100px;
border-left: 3px solid #000;
border-top: 3px solid #000;
border-bottom: 3px solid #000;
box-shadow: 4px 4px 0px 0px #000000;
}

.pc-fix-banner04-text::after {
content: "";
width: 0.1rem;
height: 0.1rem;
border-top: .5rem solid transparent;
border-left: .5rem solid transparent;
border-right: .5rem solid #000;
border-bottom: .5rem solid #000;
position: absolute;
right: .5rem;
bottom: .5rem;
}

.pc-fix-banner04-text a {
text-decoration: none;
display: block;
}

.pc-fix-banner04-text a:hover {
opacity: .7;
}

.pc-fix-banner04-text p {
margin: 0;
font-size: 1.4rem;
text-align: center;
line-height: 1.5;
}

.pc-fix-banner04-text .text-small {
font-size: 1.2rem;
line-height: 1.5;
}

@media screen and (max-width: 767px) {
.pc-fix-banner04 {
width: 100%;
bottom: 0;
}
.pc-fix-banner04-text p {
line-height: 1.3;
}

.pc-fix-banner04 .l-stack-small {
flex-direction: unset;
justify-content: space-around;
gap: 0;
}

.pc-fix-banner04-text {
border-radius: 0;
box-shadow: none;
border-bottom: none;
border-right: none;
border-left: none;
border-top: 2px solid #000;
padding: 0.4rem;
width: 50%;
}

.pc-fix-banner04-color1 {
border-right: 1px solid #000;
}

.pc-fix-banner04-color2 {
border-left: 1px solid #000;
}
.onb-index01-chapter {
padding: var(--s2) 0;
}
}


/*--------------------------------------
mainvisual
---------------------------------------*/
.mainvisual {
min-height: 90rem;
padding: 5rem 0 7rem 0;
background: #fffae0 url(img/mv_bg_01.png) no-repeat center center;
background-size: cover;
}
.mainvisual02 {
min-height: auto;
}
.mainvisual03 {
min-height: auto;
}
.mainvisual .mv-inner {
position: relative;
width: 110rem;
margin: 0 auto;
}
.mainvisual02 .mv-inner {
width: 100rem;
}
.mainvisual03 .mv-inner {
width: 100rem;
}
.mainvisual .mv-logo {
display: none;
}
.mainvisual .mv-sitename {
display: flex;
align-items: center;
min-height: 40rem;
padding: 12rem 0 0 0;
background: url(img/mv_bg_02.png) no-repeat right 25px top;
}
.mainvisual02 .mv-sitename {
display: flex;
align-items: center;
min-height: 40rem;
padding: 2rem 0 0 0;
background: url(img/mv_bg_02-o.png) no-repeat right top;
}
.mainvisual03 .mv-sitename {
display: flex;
align-items: center;
min-height: 40rem;
padding: 2rem 0 0 0;
background: url(img/mv_bg_02-h.png) no-repeat right top;
}
.mainvisual .mv-catch {
position: relative;
font-size: 4.8rem;
font-weight: 700;
line-height: 1.4;
}
.mainvisual02 .mv-catch {
margin-left:-5rem;
letter-spacing:5px;
}
.mainvisual03 .mv-catch {
margin-left:-5rem;
letter-spacing:5px;
}
.mainvisual .mv-catch::before {
position: absolute;
left: -2rem;
top: -1.8rem;
width: 4.8rem;
height: 4.8rem;
background: url(img/mv_bg_04.png) no-repeat left top;
background-size: contain;
content: "";
}
.mainvisual .mv-catch span {
display: inline-block;
margin: 0 0 2rem 0;
padding: 0.1rem 1rem 0.5rem 1rem;
background: #fff;
border-radius: 1rem;
}
.mainvisual .mv-txt {
position: relative;
padding: 3rem 0 0 75rem;
}
.mainvisual .mv-txt::before {
position: absolute;
left: 0;
top: -3rem;
width: 72.6rem;
height: 43.2rem;
background: url(img/mv_bg_03.png) no-repeat left top;
background-size: contain;
content: "";
}
.mainvisual .mv-title {
margin: 0 0 1.5rem 0;
font-size: 3rem;
font-weight: 700;
line-height: 1.4;
}
.mainvisual .mv-title span {
background: linear-gradient(transparent 60%, #faee2b 60%);
}

.mainvisual-lower {
display: flex;
align-items: center;
justify-content: center;
height: 25rem;
background: #fffae0 url(img/mv_bg_07.png) no-repeat center center;
background-size: cover;
text-align: center;
}
.mainvisual-lower .mv-logo {
width: 23rem;
}
.mainvisual-lower .mv-logo a:hover {
opacity: 0.7;
}


@media screen and (max-width: 767px) {

.mainvisual {
min-height: auto;
padding: 1rem 1.5rem 3rem 1.5rem;
background: #fffae0;
}
.mainvisual02 {
padding: 2rem 1.5rem 0.5rem 1.5rem;
}
.mainvisual03 {
padding: 2rem 1.5rem 0.5rem 1.5rem;
}
.mainvisual .mv-inner {
width: 100%;
}
.mainvisual .mv-logo {
display: block;
width: 80%;
margin: 0 0 1rem 0;
}
.mainvisual .mv-sitename {
display: block;
min-height: auto;
padding: 27% 0 50% 0;
background: url(img/mv_bg_05.png) no-repeat center top;
background-size: contain;
}
.mainvisual02 .mv-sitename {
display: block;
min-height: auto;
padding: 25% 0 25% 0;
background: url(img/mv_bg_05-o.png) no-repeat center top;
background-size: contain;
}
.mainvisual03 .mv-sitename {
display: block;
min-height: auto;
padding: 25% 0 25% 0;
background: url(img/mv_bg_05-h.png) no-repeat center top;
background-size: contain;
}
.mainvisual .mv-catch {
font-size: 7vw;
margin-left:0;
letter-spacing:0;
}
.mainvisual .mv-catch::before {
position: absolute;
left: -0.8rem;
top: -0.8rem;
width: 2rem;
height: 1.3rem;
background: url(img/mv_bg_06.png) no-repeat left top;
background-size: contain;
content: "";
}
.mainvisual .mv-catch span {
display: inline-block;
margin: 0 0 1rem 0;
padding: 0.1rem 1rem 0.5rem 1rem;
background: #fff;
border-radius: 1rem;
}
.mainvisual .mv-txt {
padding: 0;
}
.mainvisual .mv-txt::before {
display: none;
content: none;
}
.mainvisual .mv-title {
margin: 0 0 1.5rem 0;
font-size: 2.6rem;
font-weight: 700;
line-height: 1.4;
}
.mainvisual .mv-title span {
background: linear-gradient(transparent 60%, #faee2b 60%);
}

.mainvisual-lower {
height: auto;
min-height: 14rem;
padding: 0 1.5rem;
background: #fffae0 url(img/mv_bg_08.png) no-repeat center center;
background-size: cover;
}
.mainvisual-lower .mv-logo {
width: 14rem;
}

}


/*--------------------------------------
category-page
---------------------------------------*/
.category-page {
max-width: 100rem;
margin: 0 auto;
padding: 0 var(--s3) var(--s6) var(--s3);
box-sizing: content-box;
}


@media screen and (max-width: 767px) {

.category-page {
padding: 0 calc(var(--s1) + var(--s-2));
box-sizing: border-box;
}

}
