@charset "UTF-8";

/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
figure,
nav,
footer,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-weight: normal;
    line-height: 1;
    font-size: 14px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #636363;
}

ol,
ul,
li,
dl,
dt,
dd {
    list-style: none;
    margin: 0;
    padding: 0;
}

a {
    color: #003987;
    text-decoration: none;
}

a:hover {
    color: #e50038;
    text-decoration: underline;

}

a:visited {
    color: #003987;
}

img {
    max-width: 100%;
    vertical-align: bottom;
    border: none;
    /* -webkit-backface-visibility: hidden; */
}

#wrapper {
    overflow: hidden;
    width: 100%;
}

a:hover img {
    opacity: 0.6;
    transition: all .1s;
}

/*---------------------------------------------------------------------------------------------*/
h2.tit::after {
    border-left: 30px solid rgba(0, 0, 0, 0);
    border-right: 30px solid rgba(0, 0, 0, 0);
    border-top: 30px solid #08ad44;
    bottom: -30px;
    content: "";
    height: 0;
    left: 50%;
    margin-left: -30px;
    position: absolute;
    width: 0;
}

h2.tit {
    background: #08ad44;
    margin-bottom: 100px;
    padding: 40px 0px 40px 0px;
    position: relative;
    text-align: center;
    color: #FFF;
    font-size: 320%;
    font-weight: bold;
    line-height: 1.5;
}

h2.tit span {
    color: #FFEB3B;
    font-size: 115%;
    font-weight: inherit;
}

h2.tit p {
    font-size: 180%;
    color: #FFF;
    font-family: "mplus-1p-black";
}

/*---------------------------------------------------------------------------------------------*/
.wrapper {
    background: #08ad44;
}

header {
    width: 100%;
    overflow: hidden;
    margin: 0px auto;
    padding: 5px 0px 10px;
    background: #08ad44;
}

header {
    width: 1100px;
    margin: 0 auto;
    overflow: hidden;
    display:
        flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

header .logo {
    width: 50%;
    padding: 0px 0 0;
}

header .logo img {
    width: 100%;
}

header .right {
    width: 45%;
    text-align: right;
}

header .right a img {
    width: 100%;
}

header h1 {
    color: #fff;
    width: 100%;
    font-size: 100%;
    margin-bottom: 5px;
}

header h1 span {
    font-size: 100%;
}


/*---------------------------------------------------------------------------------------------*/
.main {
    width: 100%;
    padding-top: 20px;
    background: #FFF;
    background: url(../images/main-back.png) no-repeat;
    background-size: cover;
}

.main .inner {
    width: 1100px;
    margin: 0px auto;
    margin-bottom: 0px;
    padding: 0px 0px;
    text-align: center;
    position: relative;
    /* 相対位置指定 */
}

.main .inner img {
    width: 100%;
}

.main .inner div.btn {
    position: absolute;
    /* 絶対位置指定 */
    top: 320px;
    left: 0;
    right: 0;
}

.main .inner div.btn img {
    width: 280px;
}

.main .inner a:hover img {
    opacity: 0.9;
    filter: brightness(100%);
    filter: saturate(120%);
    transition: all .3s;
}

/*-nav--------------------------------------------------------------------------------------------*/
nav#pc {
    width: 100%;
    background-color: #fff;
    border-top: 1px solid #efefef;
    border-bottom: 1px solid #efefef;
}

nav#pc ul {
    width: 1147px;
    margin: 0px auto;
    display: flex;
    /*横並び*/
    align-items: top;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: space-between;
}

nav#pc ul li {
    width: calc(100% / 6);
}

nav#pc ul li a {
    padding: 25px 0px 20px 0px;
    display: block;
    font-size: 120%;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    color: #08ad44;
    border-left: 1px solid #efefef;
    font-family: Arial, Helvetica, sans-serif;
    border-bottom: 4px solid #efefef;
}

nav#pc ul li:last-child a {
    border-right: 1px solid #efefef;
}

nav#pc ul li a:hover {
    background: #fcf9d3;
    border-bottom: 4px solid #ffeb3b;
}

nav#pc ul li.now a {
    border-bottom: 4px solid #ffeb3b;
    background: #fffde2;
}
/*-top_youtube--------------------------------------------------------------------------------------------*/
.top_youtube {
    padding: 80px 0px;
}

.top_youtube .inner{
    width: 1000px;
    max-width: 90%;
    margin: 0px auto;
    text-align: center;
}


.top_youtube .movie-tit{
margin-bottom: 20px;
}

.youtube_area{
    max-width: 100%;
    margin-bottom: 40px;
}

.youtube_area iframe{
    max-width: 100%;
}

.top_youtube video{
    width: 800px;
}
/*-reason--------------------------------------------------------------------------------------------*/
.reason {
    overflow: hidden;
    margin: 0px auto;
    padding: 0px 0px 60px 0px;
    background-color: rgba(255, 253, 226, 1);
    background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgba(255, 255, 250, 1) 10px, rgba(255, 255, 250, 1) 20px);
}

.reason h2.tit .txt {
    margin-bottom: 20px;
    text-align: left;
    font-size: 100%;
    line-height: 160%;
    letter-spacing: 0;
    font-weight: bold;
    color: inherit;
}

.reason-block {
    width: calc(1100px - 30px);
    margin: 0px auto;
    padding: 30px;
    margin-bottom: 90px;
    display: flex;
    /*横並び*/
    align-items: center;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: space-between;
    background: #FFF;
    box-shadow: 0px 0px 14px -3px #bababa;
}

.reason-block.reverse {
    flex-flow: row-reverse;
}

.reason-block h3 {
    font-size: 200%;
    line-height: 140%;
    font-weight: bold;
    color: #007bc6;
}

.reason-block div.txt-block {
    width: calc(100% / 2 - 20px);
}

.reason-block div.img-block {
    width: calc(100% / 2 - 0px);
}

.reason-block div.img-block img {
    width: 100%;
    object-fit: cover;
    /* この一行を追加するだけ！ */
}

.reason-block p {
    padding: 10px 0px;
    font-size: 120%;
    line-height: 180%;
    color: #333;
}

a.reason-button {
    text-align: center;
    margin: 0px auto;
    padding: 15px 120px;
    border-radius: 10px;
    cursor: pointer;
    overflow: visible;
    text-decoration: none;
    color: #fff;
    font-size: 150%;
    background: #62bc18;
    display: inline-block;
    top: -2px;
    letter-spacing: 5px;
    position: relative;
}

a.reason-button::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

a.reason-button:hover {
    color: #FFF;
    top: 1px;
    background: #e50038;
}


/*-top-price--------------------------------------------------------------------------------------------*/
.top-price {
    width: 100%;
    padding-bottom: 60px;
}

.top-price .inner {
    width: 1100px;
    margin: 0px auto;
}

.top-price .top-price-list{
    display: flex;
    gap: 40px;
    margin-bottom: 50px;
}

.top-price .top-price-list li{
    width: calc((100% - 80px) /3);
    background: #fff;
    border-radius: 7px;
    box-shadow: 0px 0px 10px 1px #777777;
}



a.price-button {
    text-align: center;
    margin: 0px auto;
    padding: 20px 0px;
    width: 400px;
    cursor: pointer;
    overflow: visible;
    text-decoration: none;
    color: #333;
    font-size: 180%;
    border-radius: 10px;
    background: #FFE129;
    box-shadow: 0 3px #BBB;
    position: relative;
    display: inline-block;
    top: -2px;
}

a.price-button::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

a.price-button:hover {
    color: #ffffff;
    background: #607D8B;
    box-shadow: 0 1px #BBB;
    top: 1px;
}

a.price-button:hover::after {
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}

/*top-about-------------------------------------------------------------------------------------------*/
.top-about {
    background: #fffde2;
    background-size: cover;
}

.top-about h2.tit {
    margin-bottom: 30px;
    padding: 0px;
    background: none;
    text-align: center;
    font-size: 270%;
    color: #607d8b;
    line-height: 1.5;
    font-weight: bold;
}

.top-about h2 span {
    color: #e2003e;
    font-size: 105%;
    font-weight: inherit;
}

.top-about h2.tit::after {
    display: none;
}

.top-about .inner {
    width: 1000px;
    margin: 0px auto;
    display: flex;
    padding: 80px 0px;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
}

.top-about .inner div.img {
    width: 40%;
    text-align: right;
}

.top-about .inner div.img img {
    width: 100%;
}

.top-about .inner div.txt {
    text-align: center;
    font-size: 140%;
    line-height: 220%;
}

.top-about .inner div.txt span {
    font-size: 160%;
    color: #e24b22;
    font-weight: bold;
}

/*info-----------------------------------------------------*/
section.top-info {
    width: 100%;
    margin: 0px auto;
    padding: 80px 0px;
    background: #F5F5F5;
}

section.top-info h2 {
    margin-bottom: 30px;
    color: #08ad44;
    font-size: 380%;
    letter-spacing: 5px;
    text-align: center;
}

section.top-info .inner {
    width: calc(1000px - 240px);
    margin: 0px auto;
    padding: 40px 120px;
    background: #FFF;
    border-radius: 10px;
}

section.top-info div.info_list {
    margin-bottom: 40px;
}

section.top-info dl {
    max-width: 1000px;
    margin: 0 auto;
    border-bottom: 1px dotted #c9ccd0;
    padding: 15px 10px;
    display: flex;
    align-items: center;
}


section.top-info dl dt {
    width: 120px;
    margin-right: 35px;
    font-size: 120%;
}

section.top-info dl dd a {
    font-size: 115%;
    text-decoration: none;
    color: #004bb1;
}

section.top-info dl dd a:hover {
    text-decoration: underline;
    color: #ff700c;
}

section.top-info a.more {
    width: 320px;
    text-align: center;
    margin: 0px auto;
    padding: 18px 0px;
    cursor: pointer;
    overflow: visible;
    text-decoration: none;
    border-radius: 10px;
    color: #fff;
    font-size: 130%;
    line-height: 1;
    position: relative;
    display: inline-block;
    letter-spacing: 5px;
    background: #8dc21f;
}

section.top-info a.more::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

section.top-info a.more:hover {
    color: #ffffff;
    background: #e50038;
    box-shadow: 0 1px #BBB;
    top: 1px;
}

section.top-info a.more::after {
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}

/*ad-------------------------------------------------------------------------------------------*/
.top-ad {
    width: 100%;
    padding: 60px 0px;
    background: #EEE;
}

.top-ad .inner {
    width: 1100px;
    border: 4px solid #B4DEF8;
    margin: 0px auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    background: #B4DEF8;
}

.top-ad .inner div.tit {
    width: 340px;
    background: #B4DEF8;
    text-align: center;
    font-size: 240%;
    letter-spacing: 5px;
    color: #646464;
}

.top-ad .inner div.txt {
    width: 740px;
    padding: 10px 10px 10px 10px;
    color: #333;
    font-size: 120%;
    line-height: 240%;
    background: #FFF;
}

.top-ad .inner div.txt .chirashi {
    width: calc(100% - 20px);
    padding: 10px;
    display: flex;
    align-items: top;
    flex-wrap: wrap;
    justify-content: space-between;
}

.top-ad .inner div.txt .chirashi li {
    padding: 5px 0px;
    margin: 0px auto;
    width: 30%;
}

.top-ad .inner div.txt .chirashi li img {
    width: 100%;
}

.top_credit_bnr {
    margin-bottom: 60px;
}

.top_credit_bnr .inner {
    width: 1000px;
    margin: 0px auto;
}

.top_credit_bnr img {
    max-width: 100%;
}

/*shop-------------------------------------------------------------------------------------------------------*/
/* p.map {
	float: left;
	width: 700px;
} */
/*-footer--------------------------------------------------------------------------------------------*/
footer {
    clear: both;
    width: 100%;
    padding: 15px 0px;
    text-align: center;
    background: #607d8b;
}

footer .inner {
    width: 1100px;
    margin: 0px auto;
    text-align: center;
    color: #FFF;
    overflow: hidden;
}

footer .inner div.link {
    width: 50%;
    float: left;
    text-align: left;
    overflow: hidden;
}

footer .inner a {
    margin-right: 40px;
    color: #FFF;
}

footer .inner div.copy {
    width: 100%;
    float: right;
    text-align: center;
    font-size: 85%;
    overflow: hidden;
    color: #FFF;
}

/*-footer-nav--------------------------------------------------------------------------------------------*/
.footer-nav {
    width: 100%;
    background: #fff;
}

.footer-nav ul.footer-bnr {
    width: 1100px;
    margin: 0px auto;
    padding: 25px 0%;
    display: flex;
    /*横並び*/
    align-items: top;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: center;
}

.footer-nav ul.footer-bnr li {
    width: calc(100% / 4);
}

.footer-nav ul.footer-bnr li img {
    width: 95%;
}

.footer-nav ul.txt-link {
    width: 1100px;
    margin: 0px auto;
    padding: 25px 0%;
    display: flex;
    /*横並び*/
    align-items: top;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: center;
}

.footer-nav ul.txt-link li {
    border-right: 1px solid #B6B6B6;
    padding: 0px 10px;
}

.footer-nav ul.txt-link li a:hover {
    color: #FFA100;
    text-decoration: underline;
}

.footer-nav ul.txt-link li:last-child {
    border-right: none;
}

.footer-nav ul.txt-link li a {
    color: #037f30;
}

/*-bnr--------------------------------------------------------------------------------------------*/
section.bnr {
    width: 100%;
    padding: 60px 0px;
}

section.bnr .bnr_title{
    margin-bottom: 30px;
}

.bnr .inner {
    width: 1000px;
    margin: 0px auto;
}

.bnr.app .inner {
    width: 900px;
    margin: 0px auto;
}

.bnr .inner p {
    margin: 0px auto;
    text-align: center;
}

.bnr .inner p img {
    width: 100%;
}

section.bnr.line_bnr{
    margin-bottom: -90px;
}

ul.bnr {
    width: 100%;
    margin: 0px auto;
    padding: 30px 0% 0px 0%;
    display: flex;
    align-items: top;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}
ul.bnr li{
 width: calc((100% - 20px)/2);
}
section.bnr-list {
    padding: 60px 0px;
    background: #ebeef0;
}

section.bnr-list ul {
    width: 800px;
    margin: 0px auto;
    display: flex;
    align-items: top;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
}

section.bnr-list ul li {
    width: calc((100% - 40px) / 3);
}

section.bnr-list ul li img {
    width: 100%;
}

/*--------------------------------------------------------------------------------------------------------------*/
.red {
    color: #cc0000;
    font-size: inherit;
}

.blue {
    color: #17358e;
    font-size: inherit;
}

.center {
    text-align: center;
}

.center .inner {
    width: 1100px;
    margin: 0px auto;
    padding: 0px 0px 90px 0px;
    text-align: center;
}

.column {
    margin: 0px auto;
    margin-bottom: 40px;
    text-align: center;
}

.tel-txt .inner {
    width: 820px;
    margin: 0px auto;
    padding: 40px 0px;
}

.tel-txt .inner p {
    margin: 0px auto;
    padding: 10px;
    border: 2px solid #cc0000;
    font-size: 110%;
    line-height: 180%;
    background: #FFF;
}

.tel-txt .inner span.tel {
    font-size: 140%;
    color: #cc0000;
}

.credit-text {
    margin: 8px 0 0;
    text-align: center;
}

/*shop-list-----------------------------------------------------*/
.shop-list .inner {
    width: 1100px;
    margin: 0 auto;
}

.shop-list .shop-txt {
    margin-top: 30px;
}

.shop-list .shop-txt h4 {
    margin-bottom: 5px;
    font-size: 160%;
    color: #cc0000;
}

.shop-list .shop-txt p {
    font-size: 115%;
    line-height: 1.8;
}

h3.shop-list {
    margin-bottom: 20px;
    padding: 20px 0px;
    font-size: 210%;
    line-height: 1;
    border-top: 1px solid #08ad44;
    border-bottom: 1px solid #08ad44;
    color: #08ad44;
    text-align: center;
    background: #fffde2;
    font-weight: bold;
    margin-top: 30px;
}

/*shop*/
.shop-block {
    width: 100%;
    margin: 0px auto;
    margin-bottom: 40px;
    display: flex;
    /*横並び*/
    align-items: top;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: space-between;
}

.shop-block .map {
    width: 55%;
    border: 1px solid #FFF;
}

.shop-block .map p.txt {
    width: auto;
    padding: 5px 10px;
    text-align: center;
    font-size: 140%;
    background: #283c9b;
    color: #FFF;
}

.shop-block .txt {
    width: 41%;
}

.shop-block .txt ul {}

.shop-block .txt ul li {
    text-align: center;
    font-size: 120%;
    line-height: 180%;
}

.shop-block .txt ul li.reserve {
    font-size: 140%;
    padding: 15px 0px;
    color: #EB692E;
    font-family: "Sawarabi Mincho";
}

.shop-block .txt ul li.reserve span {
    font-size: 160%;
    padding-left: 5px;
    color: #EB692E;
}

.shop-block .txt img {
    width: 100%;
    margin-bottom: 10px;
}

table.shop {
    margin: 0px 0px 10px 0px;
    width: 100%;
    text-align: center;
    border: 1px solid #4B575C;
    border-collapse: collapse;
    border-spacing: 0px;
}

table.shop {
    margin: 0px 0px 30px 0px;
    width: 100%;
    text-align: center;
    border: 1px solid #BBB;
    border-collapse: collapse;
    border-spacing: 0px;
    background: #FFF;
}

table.shop th,
table.shop td {
    padding: 10px 8px 10px 8px;
    line-height: 18px;
    vertical-align: middle;
    border: 1px solid #BBB;
    text-align: left;
    font-size: 120%;
    font-weight: normal;
}

table.shop td a{
    font-size: 100%;
}

table.shop th {
    width: 120px;
    background: #F3F4F4;
    color: #333;
}

table.shop td span.red {
    font-size: 150%;
    color: #FF0004;
}

table.shop td.reserve {
    font-size: 140%;
    color: #EE0003;
    text-decoration: underline;
}

ul.shop {
    margin-bottom: 10px;
}

ul.shop li {
    font-size: 130%;
}

ul.shop li.reserve {
    font-size: 120%;
    color: #cc0000;
}

ul.shop li.reserve a {
    font-size: 135%;
    color: #cc0000;
}

/*--------------------------------------------------------------------------------------*/
.shop-list-block {
    width: 1100px;
    margin: 0px auto;
}

.shop-list-block .shops {
    margin: 0px auto;
    margin-bottom: 20px;
    display: flex;
    /*横並び*/
    align-items: top;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: space-between;
}

.shop-list-block p.name {
    padding: 10px;
    font-size: 140%;
    background: #e6e6e5;
}

.shop-list-block p {
    padding: 10px;
    font-size: 100%;
}

.shop-list-block ul.shops li {
    width: calc(100% / 4 - 20px);
    border: 2px solid #454c53;
    margin-bottom: 20px;
}

/*chirashi---------------------------------------------------------------------------*/
p.chirashi {
    margin: 0px auto;
    display: flex;
    /*横並び*/
    align-items: top;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: space-between;
}

p.chirashi p {
    overflow: hidden;
    margin: 50px;
}

section.adArea {
    width: 1100px;
    margin: 0px auto;
    margin-bottom: 25px;
}

section.adArea .tit {
    background: #fe2d17;
    padding: 5px 0px 5px 0px;
    text-align: center;
    font-size: 210%;
    color: #FFF;
}

.adArea ul {
    width: calc(100% - 6px - 20px);
    border: 3px solid #fe2d17;
    overflow: hidden;
    padding: 10px;
    padding-bottom: 0px;
}

.adArea ul li.person {
    margin-right: 30px;
    width: 30%;
    float: left;
}

.adArea ul li.person img {
    width: 100%;
}

.adArea ul div.chirashi {
    width: calc(100% - 30% - 30px - 40px);
    display: flex;
    /*横並び*/
    align-items: center;
    /*天地センター*/
    flex-wrap: wrap;
    justify-content: space-between;
}

.adArea ul li.pop {
    width: 48%;
    text-align: center;
}

.adArea ul li.pop img {
    width: 90%;
}

/*-form-btn------------------------------------------------------------------------------------*/
.submit_btn {
    border: 0px;
    font-size: 150%;
    width: 204px;
    height: 55px;
    background: #FF9426;
    cursor: pointer;
}

/*page-top------------------------------------------------------------------------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 90%;
}

#page-top a {
    background: #9A9A9A;
    text-decoration: none;
    color: #fff;
    padding: 20px 20px;
    text-align: center;
    display: block;
    border-radius: 5px;
}

#page-top a:hover {
    text-decoration: none;
    background: #fe2d17;
}

#sp-price {
    margin-top: -100px;
    padding-top: 100px;
}

#about01,
#about02,
#about03,
#about04 {
    margin-top: -60px;
    padding-top: 60px;
}

/*グループリンク-------------------------------------------------------------*/
section.group_link {
    background: #FFF8DF;
}

section.group_link .inner {
    width: 1110px;
    margin: 0px auto;
    padding: 40px 0px;
    overflow: hidden;
}

/* section.group_link h4 {
	margin-bottom: 25px;
	padding: 8px 0px;
	border-bottom: 1px solid #E7171C;
	border-top: 1px solid #E7171C;
	color: #E7171C;
	font-size: 180%;
	text-align: center;
} */
section.group_link ul {
    margin: 0px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

section.group_link ul li {
    width: calc(100% / 2 - 20px);
    margin-bottom: 20px;
}

section.group_link ul li img {
    width: 100%;
}

section.group_link ul li:nth-of-type(3) {
    text-align: center;
    background-color: #fff;
    border: 3px solid #17358e;
}

section.group_link ul li:nth-of-type(3) p {
    padding: 10px 0;
    font-size: 200%;
    color: #fff;
    line-height: 1.2;
    background-color: #17358e;
}

section.group_link ul li:nth-of-type(3) a {
    display: inline-block;
}

section.group_link ul li:nth-of-type(3) a:hover {
    color: #FFA100;
}

section.group_link ul li:nth-of-type(3) a:nth-of-type(1) {
    margin: 15px 0;
    padding: 0 10px;
    border-right: 1px solid #B6B6B6;
}

section.group_link ul li:nth-of-type(3) a:nth-of-type(2) {
    margin: 15px 0;
    padding: 0 10px;
}

section.group_link ul li:nth-of-type(3) a:nth-of-type(3) {
    margin: 0 0 15px;
    padding: 0 10px;
    border-right: 1px solid #B6B6B6;
}

section.group_link ul li:nth-of-type(3) a:nth-of-type(4) {
    margin: 0 0 15px;
    padding: 0 10px;
}

a.reserve-btn {
    display: inline-block;
    font: normal normal 300 1.3em 'Open Sans';
    text-decoration: none;
    color: rgba(28, 190, 131, 1);
    background-color: rgba(28, 190, 131, 1);
    border: 1px solid rgba(28, 190, 131, 1);
    border-radius: 100px;
    padding: .6em 1.8em;
    margin: 5px;
}

a.reserve-btn:hover {
    color: #1D2C41;
    border: 1px solid #1D2C41;
}

ul.bnr-list {
    width: 900px;
    margin: 0px auto;
    padding: 60px 0px;
    display: flex;
    align-items: top;
    flex-wrap: wrap;
    justify-content: space-between;
}

ul.bnr-list li {
    width: 48%;
}

ul.bnr-list li img {
    width: 100%;
}

.holiday_area02 {
    width: 960px;
    margin: 100px auto 0;
    background-color: rgb(255, 253, 241);
    border: 2px solid red;
    padding: 15px;
    font-size: 110%;
    line-height: 190%;
}

.holiday_area02 p {
    text-align: left;
    line-height: 180%;
    margin-bottom: 10px;
}

.holiday_area02 p.text_right {
    text-align: right;
}

.holiday_area02 p.tit {
    text-align: center;
    color: red;
    font-size: 140%;
}

.holiday_area02 p.date {
    font-size: 120%;
    font-weight: bold;
    color: red;

}

@media screen and (max-width: 960px) {
    .holiday_area02 {
        width: calc(100% - 40px - 4px);
        margin: 20px auto;
        background-color: rgb(255, 253, 241);
        border: 2px solid red;
        padding: 10px;
        font-size: 95%;
        line-height: 160%;
    }

    .holiday_area02 p {
        text-align: left;
    }

    .holiday_area02 p.tit {
        color: red;
        font-size: 130%;
        text-align: center;
    }
}

/*-privacy------------------------------------------------------------------------------------*/
.privacy .inner {
    width: 820px;
    margin: 0px auto;
    padding: 40px 0px;
}

.privacy p {
    line-height: 1.5;
}

/*newsbox----------------------------------------------------*/
.newsbox {
    padding: 40px 0px;
    background: #f5f5f5;
}

.newsbox .inner {
    width: 1000px;
    max-width: 90%;
    margin: 0px auto;
    padding: 0;
    overflow: hidden;
}

.newsbox .inner h3 {
    position: relative;
    text-align: center;

}

.newsbox .inner h3 span {
    display: inline-block;
    padding: 0 9px;
    position: relative;
    z-index: 1;
    background: #f5f5f5;
    font-size: 240%;
    line-height: 1.1;
    font-weight: bold;
    color: #019f39;
    position: relative;
    margin-bottom: 25px;
}

.newsbox .inner h3 span.gray {
    background: #f5f5f5;
}

.newsbox .inner h3:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    background: #019f39;
    left: 0;
    top: 35%;
    transform: translate(0, -50%);
    z-index: 1;
}

.newsbox_box{
    max-height: 800px;
    overflow-y: scroll;
}

.newsbox ul {
    width: 100%;
    display: flex;
    align-items: flex-start;
    /*天地センター*/
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.newsbox ul li {
    width: calc(100% / 3 - 10px);
    max-height: 130px;
}

.newsbox dl {
    width: 100%;
    padding: 10px 0px;
    display: flex;
    align-items: top;
    /*天地センター*/
}

.newsbox dt {
    padding: 0px 10px;
    min-height: 120px;
    max-height: 120px;
    min-width: 120px;
    max-width: 120px;
}

.newsbox dt img {
    background: #FFF;
    max-height: 120px;
    min-width: 120px;
    max-width: 120px;
}

.newsbox dd a {
    text-decoration: underline;
    font-size: 115%;
}

.newsbox a.btn {
    display: block;
    border-radius: 10px;
    width: 300px;
    margin: 0px auto;
    padding: 15px 10px 15px 10px;
    background: #02ab3d;
    text-align: center;
    color: #fff;
    font-size: 140%;
    line-height: 1;
    position: relative;
}

.newsbox a.btn::after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.newsbox a.btn:hover {
    color: #fff100;
}

/*anoteher_shop------------------------------------------------------*/
.anoteher_shop {
    margin-bottom: 60px;
}

.anoteher_shop .inner {
    width: 1000px;
    max-width: 90%;
    margin: 0 auto;
}

.anoteher_shop h3.titstyle {
    text-align: center;
    position: relative;
}

h3.titstyle:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    background: #c7c7c7;
    left: 0;
    top: 35%;
    transform: translate(0, -50%);
    z-index: 1;
}

.anoteher_shop h3.titstyle span {
    font-size: 280%;
    line-height: 1;
    font-weight: bold;
    color: #08ad44;
    text-align: center;
    margin-bottom: 25px;
    display: inline-block;
    background: #fff;
    position: relative;
    padding: 0 9px;
    z-index: 1;
}

.anoteher_shop .anoteher_shop_area {
    width: 90%;
    margin: 0px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.anoteher_shop .anoteher_shop_list {
    width: calc((100% - 60px) / 4);
}

.anoteher_shop .anoteher_shop_list a {
    position: relative;
    background: #f0ead4;
    box-shadow: 0 5px #cac5b2;
    border-radius: 5px;
    color: #000;
    text-align: center;
    padding: 10px 0;
    display: block;
    width: 100%;
    text-decoration: none;
    line-height: 1.6;
}

.anoteher_shop .anoteher_shop_list a:hover {
    top: 3px;
    box-shadow: 0 3px #cac5b2;
}

@media screen and (max-width: 768px) {
    .anoteher_shop .anoteher_shop_list {
        width: calc((100% - 20px) / 2);
    }
}

/*insurance----------------------------------------------------*/
#insurance .inner {
    width: 1110px;
    max-width: 90%;
    margin: 30px auto;
}

.insurance_gif {
    margin: 30px auto;
    text-align: center;
}

.insurance_title{
    padding: 15px 20px;
    background: #08ad44;
    border-radius: 10px;
    font-size: 242%;
    line-height: 1.2;
    color: #fff;
    font-weight: bold;
    margin-bottom: 20px;
}
.insurance_flex {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}

.insurance_flex.row-reverse {
    flex-direction: row-reverse;
}

.insurance_flex .text_area {
    width: 65%;
}

.insurance_flex .text_area p {
    font-size: 120%;
    line-height: 1.5;
}

.insurance_flex .text_area p+p {
    margin-top: 1.5rem;
}

.insurance_section+.insurance_section {
    margin-top: 60px;
}

.insurance_section_bg_yellow {
    padding: 20px;
    margin: 1.5rem 0;
    background: #fffde2;
    text-align: center;
    border-radius: 10px;
}

#insurance table {
    border-left: 1px solid #222;
    border-top: 1px solid #222;
    margin-bottom: 20px;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

#insurance table th {
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    padding: 10px;
    text-align: left;
}

#insurance table td {
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
    padding: 10px;
    text-align: center;
}

#insurance table.table_blue th {
    background: #9bd7fb;
    color: #000000;
}

#insurance table.table_purple th {
    background: #cba2c5;
    color: #000000;
}

#insurance .red_td {
    background: #f8cecc;
    color: #d90000;
}

.insurance_section_bg_red {
    background: #fad1d5;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 20px;
    margin-bottom: 20px;
}

.insurance_section_bg_red p {
    color: #000000;
}

.insurance_box {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 20px;
    border: solid #000000 1px;
    margin-top: 15px;
    margin-bottom: 15px;
}

.insurance_flex .text_area .insurance_box p{
    font-size: 100%;
}

.insurance_section_text_left{
text-align: right;
}