@charset "UTF-8";
/*
    font-family: 'M PLUS Rounded 1c', sans-serif;
*/
/*!
* ress.css • v1.0.1
* MIT License
* github.com/filipelinhares/ress
*/

/* # =================================================================
# Global selectors
# ================================================================= */

html {
    box-sizing: border-box;
    overflow-y: scroll; /* All browsers without overlaying scrollbars */
    -webkit-text-size-adjust: 100%; /* iOS 8+ */
}

*,
::before,
::after {
    box-sizing: inherit;
}

::before,
::after {
    text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
    vertical-align: inherit;
}

/* Remove margin, padding of all elements and set background-no-repeat as default */
* {
    background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements */
    padding: 0; /* Reset `padding` and `margin` of all elements */
    margin: 0;
}

/* # =================================================================
# General elements
# ================================================================= */

/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
    display: none;
    height: 0;
}

hr {
    overflow: visible; /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

small {
    font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
    display: none; /* Add the correct display in IE */
}

abbr[title] {
    border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */
    text-decoration: none; /* Remove text decoration in Firefox 40+ */
}

a {
    background-color: transparent; /* Remove the gray background on active links in IE 10 */
    -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
    outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace; /* Specify the font family of code elements */
}

b,
strong {
    font-weight: bolder; /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
    font-style: italic; /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
    background-color: #ff0;
    color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* # =================================================================
# Forms
# ================================================================= */

input {
    border-radius: 0;
}

[type="number"] {
    width: auto; /* Firefox 36+ */
}

[type="search"] {
    -webkit-appearance: textfield; /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; /* Safari 8 */
}

textarea {
    overflow: auto; /* Internet Explorer 11+ */
    resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
    font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
    font-weight: bold; /* Restore the font weight unset by the previous rule. */
}

button {
    overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: 0;
    padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    outline: 1px dotted ButtonText;
}

button,
html [type="button"], /* Prevent a WebKit bug where (2) destroys native `audio` and `video`controls in Android 4 */
[type="reset"],
[type="submit"] {
    -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

button,
select {
    text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
    background-color: transparent;
    border-style: none;
    color: inherit;
}

/* Style select like a standard input */
select {
    -moz-appearance: none; /* Firefox 36+ */
    -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
    display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
    color: currentColor; /* Internet Explorer 11+ */
}

legend {
    border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
    color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
    display: table; /* Correct the text wrapping in Edge and IE */
    max-width: 100%; /* Correct the text wrapping in Edge and IE */
    white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
    -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */
    font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

/* Correct the text style of placeholders in Chrome, Edge, and Safari */
::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54;
}

[type="search"] {
    -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
    outline-offset: -2px; /* Correct the outline style in Safari */
}

/* # =================================================================
# Specify media element style
# ================================================================= */

img {
    border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
    vertical-align: baseline;
}

svg:not(:root) {
    overflow: hidden; /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
    display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
# Acessibility
# ================================================================= */

/* Hide content from screens but not screenreaders */
@media screen {
    [hidden~="screen"] {
        display: inherit;
    }
    [hidden~="screen"]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important;
    }
}

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
    cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
    cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
    cursor: default;
}

/* # =================================================================
# Selection
# ================================================================= */

/* Specify text selection background color and omit drop shadow */

::-moz-selection {
    background-color: #b3d4fc; /* Required when declaring ::selection */
    color: #fff;
    text-shadow: none;
}

::selection {
    background-color: #b3d4fc; /* Required when declaring ::selection */
    color: #fff;
    text-shadow: none;
}
.col-ms-5 {
}

* {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.8em;
    color: #333333;
    font-size: 16px;
    background-color: #FCFAF6;
}

p {
    line-height: 1.7em;
    color: #333333;
    font-size: 16px;
}

a {
    text-decoration: none;
    color: #333333;
    -webkit-transition: all 0.s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

ul li {
    list-style-type: none;
}

img {
    border: 0;
    vertical-align: bottom;
}

a:hover {
    opacity: 0.7;
    -moz-opacity: 0.7;
    filter: alpha(opacity=70);

}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600;
}

/*******************/
.f12 {
    font-size: 12px !important;
}

.f14 {
    font-size: 14px !important;
}

/*******************/

.pt10 {
    padding-top: 10px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pb0 {
    padding-bottom: 0 !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.mt0 {
    margin-top: 0 !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mb0 {
    margin-bottom: 0 !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.mb80 {
    margin-bottom: 80px !important;
}

.mb100 {
    margin-bottom: 100px !important;
}

.sp_pb0 {
    padding-bottom: 0 !important;
}

/*******************/
.icon_01 span {
    padding-left: 20px;
    background-image: url("../images/icon_02.png");
    background-size: 16px 20px;
    background-position: left 3px;
    font-size: 16px;
    line-height: 1.4em;
}


/*******************/
.tel_img img {
    max-width: 224px;
    width: 100%;
}

.img300 img {
    max-width: 300px;
    width: 100%;
}

.img100 img {
    max-width: 100px;
    width: 100%;
}

.img410 img {
    max-width: 410px;
    width: 100%;
    display: block;
}

/**************/

.float_sb {
    display: flex;
    justify-content: space-between;
}

.float_sa {
    display: flex;
    justify-content: space-around;
}

.float_ce {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.float_ft {
    display: flex;
    justify-content: flex-start;
}

.float_en {
    display: flex;
    justify-content: flex-end;
}




.type_01,
.type_02 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.type_01 .l_box {
    max-width: 510px;
    width: 47%;
}

.type_01 .r_box {
    max-width: 510px;
    width: 47%;
}

.type_02 .l_box {
    max-width: 510px;
    width: 47%;
    order: 2;
}

.type_02 .r_box {
    max-width: 510px;
    width: 47%;
    order: 1;
}

.type_01 .r_box > img,
.type_01 .l_box > img,
.type_02 .r_box > img,
.type_02 .l_box > img {
    max-width: 510px;
    width: 100%;
}


.type_03 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.type_03 .r_box {
    max-width: 700px;
    width: 64%;
}

.type_03 .l_box {
    max-width: 350px;
    width: 32%;
}

.type_03 .l_box img {
    max-width: 350px;
    width: 100%;
}

/**************/

.frame {
    max-width: 1130px;
    padding: 0 15px;
    margin: auto;
}

.w900 {
    max-width: 900px;
    margin: auto;
}

.w680 {
    max-width: 680px;
    width: 65%;
}


.ttl_01 {
    font-size: 27px;
    line-height: 1.4em;
    color: #586450;
    text-align: center;
    background-image: url("../images/ttl_icon.png");
    background-position: top center;
    background-size: 54px 38px;
    padding-top: 50px;
    margin-bottom: 40px;
    font-weight: 500;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    transform: skewX(0.03deg);
}

.ttl_02 {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-size: 19px;
    line-height: 1.4em;
    margin-bottom: 20px;
    color: #586450;
    font-weight: 500;
    transform: skewX(0.03deg);
}

.ttl_03 {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    color: #6A513E;
    font-size: 16px;
    border-bottom: 1px solid #6A513E;
    padding-bottom: 10px;
    margin-bottom: 15px;
    font-weight: 500;
    transform: skewX(0.03deg);
}

.ttl_04 {
    margin-bottom: 7px;
}

.ttl_04 span {
    color: #F19A89;
    padding-left: 28px;
    background-image: url("../images/icon_01.png");
    background-size: 20px 20px;
    background-position: left 3px;
    font-weight: 600;
    line-height: 1.4em;
}

.ttl_05 {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-size: 23px;
    line-height: 1.4em;
    text-align: center;
    margin-bottom: 25px;
    color: #586450;
    font-weight: 500;
    transform: skewX(0.03deg);
}




.bg_col_01 {
    background-color: #fff;
    border-radius: 5px;
}






/*******************/
article {
    padding-top: 80px;
}








/*******************/
.mv_area {
    position: relative;
}

.mv_area .mv_bnr {
    max-width: 1130px;
    padding: 0 15px;
    margin: auto;
}

.mv_area .mv_bnr .mv_bnr_a {
    position: absolute;
    top: 0;
}

.mv_area .mv_bnr .mv_bnr_a img {
    max-width: 210px;
}

.mv_area .mv_bnr .mv_bnr_b {
    position: absolute;
    bottom: 30px;
}

.mv_area .mv_bnr .mv_bnr_b img {
    max-width: 352px;
    width: 100%;
}

.mv_area .slick_mv div {
    background-size: cover;
    background-position: center;
    height: 678px;
}

.mv_area .slide_01 {
    background-image: url("../images/mv_img_01.jpg");
}

.mv_area .slide_02 {
    background-image: url("../images/mv_img_02.jpg");
}

.mv_area .slide_03 {
    background-image: url("../images/mv_img_03.jpg");
}

.mv_area .slide_04 {
    background-image: url("../images/mv_img_04.jpg");
}




.bnr_area {
    display: flex;
    justify-content: center;
}

.bnr_area a {
	display: block;
	margin: 70px 40px 0;
}

.bnr_area a img {
	max-width: 410px;
	width: 100%;
}


/*******************/


.head_inner {
    background-color: #FCFAF6;
    border-bottom: 2px solid #586450;
    padding: 10px 0;
}
.head_inner h1 {
    margin-right: auto;
}

.head_inner h1 img {
    width: 100%;
}


.head_inner .frame {
    display: flex;
    align-items: center;
}

.head_inner .h_inst,
.head_inner .tel_img {
    margin-left: 5%;
}

.head_inner .h_inst img {
    max-width: 236px;
    width: 100%;
}
.head_inner .h_inst{
    margin-bottom: -10px;
}
/*******************/

.sp_head {
    display: none;
    padding: 15px 15px;
    height: 60px;
    background-color: #FCFAF6;
    border-bottom: 2px solid #586450;
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    width: 100%;
}

.sp_nav.on {
    height: calc(100% - 50px) !important;
}

.sp_nav {
    margin-top: 50px;
    height: auto;
}

.sp_nav {
    overflow-y: scroll;
    position: fixed;
    height: auto;
    left: 0;
    z-index: 2000;
    background-color: #586450;
    top: 5px;
    width: 100%;
}

.sp_area {
    padding: 20px 0 10px;
    height: 90px;
    background-color: #FFF4E7;
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    width: 100%;
}

.sp_nav > ul {
    display: none;
    padding-bottom: 200px;
    padding: 0 15px;
}

.sp_nav > ul > li {
    border-bottom: 1px solid #fff;
    position: relative;
    text-align: center;
}

.sp_nav > ul > li > a {
    color: #fff;
    padding: 27px 20px 27px 20px;
    display: block;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}

.sp_nav > ul > li:first-child > a:after {
    content: "\f0da";
    position: absolute;
    right: 0;
    font-family: "Font Awesome 5 Free";
    font-size: 22px;
}


.sp_nav > ul > li:first-child span {
    background-image: url("../images/sp_nav_icon_01.png");
    background-size: 16px 20px;
    background-position: left 3px;
    padding-left: 30px;
}

.sp_nav > ul > li:nth-child(2) span {
    background-image: url("../images/sp_nav_icon_02.png");
    background-size: 16px 20px;
    background-position: left 3px;
    padding-left: 30px;
}

.sp_nav > ul > li:nth-child(3) span {
    background-image: url("../images/sp_nav_icon_03.png");
    background-size: 16px 16px;
    background-position: left 3px;
    padding-left: 30px;
}

.sp_nav > ul > li:last-child {
    border-bottom: 0;
    padding-top: 30px;
}

.sp_nav > ul > li p {
    color: #fff;
}

.sp_nav_ttl img {
    max-width: 88px;
    width: 100%;
}

.sp_nav .sns_inst img {
    max-width: 50px;
    width: 100%;
    margin-bottom: 20px;
}

.sp_nav .foot_bnr {
    margin-bottom: 15px;
}

#navToggle {
    display: block;
    position: fixed;
    right: 15px;
    top: 16px;
    width: 20px;
    height: 50px;
    cursor: pointer;
    z-index: 1000000;
}

#navToggle div {
    position: relative;
}

#navToggle span {
    display: block;
    position: absolute;
    /*#navToggle div に対して*/
    width: 100%;
    border-bottom: solid 2px #586450;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out
}

#navToggle span:nth-child(1) {
    top: 3px;
}

#navToggle span:nth-child(2) {
    top: 11px;
}

#navToggle span:nth-child(3) {
    top: 19px;
}

.openNav #navToggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg)
}


/*2番目と3番目のspanを45度に*/

.openNav #navToggle span:nth-child(2),
.openNav #navToggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg)
}


/*******************/

.box01 {
    background-image: url("../images/bg_img_01.png");
    background-size: 1240px 506px;
    background-position: center;
    padding-bottom: 100px;
}

.box01 .r_box p {
    margin-bottom: 20px;
}

.box01 .r_box p:last-child {
    margin-bottom: 0;
}


.box02 {
    margin-bottom: 60px;
}

.box02 .type_01 {
    margin-top: 70px;
}

.box02 .bg_col_01 {
    padding: 50px;
    border-radius: 5px;
}

.box02 .img100 {
    margin-top: -85px;
    margin-bottom: 20px;
    text-align: center;
}

.box02 .img410 {
    margin-bottom: 30px;
    text-align: center;
}


.box03 {
    background-image: url("../images/img_04.jpg");
    background-size: cover;
    height: 400px;
    background-position: center;
}









.box04 {
    padding-bottom: 120px;
    padding-top: 120px;
}

.box04 .inner01 {
    margin-bottom: 60px;
}

.box04 .inner01 .type_01 {
    align-items: flex-start;
}

.box04 .inner01 .r_box {
    text-align: center;
}

.box04 .inner01 .g_map {
    border: 2px solid #586450;
    border-radius: 5px;
    margin-bottom: 20px;
}

.box04 .inner01 .g_map iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 255 / 239;
    border-radius: 5px;
    display: block;
}

.box04 .inner01 .bg_col_01 {
    padding: 40px 45px;
    text-align: center;
}


.box04 .inner02 {
    margin-bottom: 60px;
}


.box04 .inner02 .type_01 {
    align-items: center;
}

.box04 .inner02 .type_01 {
    background-image: url("../images/bg_02.png");
    background-size: 1100px 310px;
    background-position: bottom center;
}

.box04 .inner03 {
    margin-bottom: 60px;
}

.box04 .inner03 .bg_col_01 {
    padding: 50px 15px;
    position: relative;
    text-align: center;
}

.box04 .inner03 .bg_col_01:before {
    position: absolute;
    content: "";
    background-image: url("../images/animal_03.png");
    width: 62px;
    height: 114px;
    bottom: -30px;
    left: 50px;
    background-size: 100%;
}







.box04 .inner_bg {
    background-image: url("../images/img_07.png");
    background-size: 1600px 590px;
    background-position: center;
    height: 590px;

}



/*******************/
.side_bnr {
    position: fixed;
    right: 20px;
    top: 40%;
}

.side_bnr .side_bnr_01 {
    margin-bottom: 10px;
}

.side_bnr .side_bnr_01 img {
    max-width: 50px;
    width: 100%;
}

.side_bnr .side_bnr_02 img {
    max-width: 50px;
    width: 100%;
}




/*******************/
footer {
    background-image: url("../images/f_bg_img.png");
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 1100px 162px;
    position: relative;
    background-color: #FFFFFF;

}


footer .footer_inner {
    background-image: url("../images/line_img.png");
    background-size: 112px 14px;
    background-repeat: repeat-x;
    background-position: bottom left;
    padding-bottom: 20px;
    padding: 60px 0 75px;
}

footer .frame .inner {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 20px;
    padding: 0 15px;
}


footer .frame .f_logo {
    margin-right: 80px;
    width: 14%;
}

footer .foot_bnr {
    margin: 0 2% 25px;
    width: 46%;
}

footer .foot_bnr img,
.sp_nav .foot_bnr img {
    max-width: 310px;
    width: 100%;
    margin: 0 auto;
}

footer .w680 .float_sb > div:nth-child(2) {
    margin: 0 4%;
}


.page_top a:hover {
    opacity: 1;
}

.page_top img:hover {
    opacity: 0.7;
}

.page_top img {
    position: absolute;
    top: -120px;
    left: 0;
    right: 0;
    margin: auto;
    width: 330px;
    height: 120px;
}





.copy {
    font-size: 11px;
    line-height: 1.3em;
    text-align: center;
    font-weight: 600;
    color: #586450;
}

.space {
    width: 20px;
    display: inline-block;
}


/*-------------------------------
media
--------------------------------*/
.sp_on {
    display: none;
}


@media (max-width: 900px) {
    .box02 .bg_col_01 {
        padding: 50px 20px 20px;
    }

    footer .frame .inner {
        display: block;
    }

    footer .frame .f_logo {
        width: 100%;
        text-align: center;
        margin-bottom: 30px;
    }

    .w680 {
        width: 100%;
        max-width: 100%;
    }


    footer .foot_bnr {
        text-align: center;
    }

    .space {
        width: 0;
        display: block;
    }
}

@media (min-width: 768px) {
    .sp_nav {
        display: none !important;
    }
}



@media (max-width: 767px) {
    body {
        min-width: 100%;
    }

    .fixed {
        position: fixed;
        width: 100%;
        height: 100%;
    }

    .sp_on {
        display: block;
    }

    .pc_on {
        display: none;
    }

    .float_sb,
    .float_sa,
    .float_ce,
    .float_en,
    .float_ft {
        display: block;
    }


    .type_03,
    .type_01,
    .type_02 {
        display: block;
    }


    .type_01 .l_box,
    .type_01 .r_box {
        width: 100%;
        margin: auto;
    }

    .type_03 .l_box {
        width: 100%;
        margin: 0 auto 30px;
    }

    .type_03 .r_box {
        width: 100%;
        max-width: 100%;
    }


    .ttl_01 {
        font-size: 23px;
    }

    .ttl_05 {
        font-size: 20px;
    }

    .sp_head {
        display: block;
    }

    .img410 img {
        margin: auto;
    }

    .head_inner {
        display: none;
    }


    .mv_area {
        margin-top: 60px;
    }

    .mv_area .slick_mv div {
        height: 530px;
    }

    .mv_area .slide_01 {
        background-image: url("../images/sp_mv_img_01.jpg");
    }

    .mv_area .slide_02 {
        background-image: url("../images/sp_mv_img_02.jpg");
    }

    .mv_area .slide_03 {
        background-image: url("../images/sp_mv_img_03.jpg");
    }

    .mv_area .slide_04 {
        background-image: url("../images/sp_mv_img_04.jpg");
    }

    .mv_area .mv_bnr .mv_bnr_a img {
        max-width: 150px;
    }

    .mv_area .mv_bnr .mv_bnr_b img {
        width: 70%;
    }


	.bnr_area a {
		display: block;
		margin: 70px 10px 0;
	}

	.bnr_area a img {
		max-width: 410px;
		width: 100%;
	}




    .box02 .bg_col_01 {
        padding: 50px 20px 20px;
    }

    .box02 .type_01 .l_box {
        margin-bottom: 100px;
    }

    .box03 {
        background-image: none;
        height: auto;
    }

    .box03 .sp_on img {
        width: 100%;
    }

    .box04 {
        padding-top: 60px;
    }

    .box04 .type_01 .l_box {
        margin-bottom: 40px;
    }

    .box04 .inner01 .bg_col_01 {
        padding: 20px 15px;
    }


    .box04 .inner03 .bg_col_01:before {
        left: 0;
        bottom: -60px;
    }

    .box04 .inner_bg {
        background-image: none;
        height: auto;
    }

    .box04 .sp_on img {
        width: 100%;
        padding: 0 15px;
    }








    .side_bnr {
        display: none;
    }


    footer .foot_bnr {
        width: 100%;
    }

    footer .frame .inner {
        padding: 0;
    }

    footer .w680 .float_sb {
        text-align: center;
    }

    footer .w680 .float_sb > div:nth-child(2) {
        margin: auto;
    }

    .page_top img {
        top: -72px;
        width: 200px;
        height: 74px;
    }

}



@media (max-width: 600px) {

	.bnr_area {
		display: block;
		margin-top: 50px;
		width: 100%;
	}
	
	.bnr_area a {
		display: block;
		margin: 0 10px 20px;
		text-align: center;
	}

	.bnr_area a img {
		max-width: 410px;
		width: 100%;
	}


	article {
	    padding-top: 30px;
	}

}


/* 2024/01/19 add  start */

.editor_area {
    max-width: 900px;
    width: auto;
    padding: 45px;
    margin: 70px auto 30px;
    border-radius: 5px;
    border: 2px solid #586450;
    background: #fff;
}

.editor {
    word-break: break-all;
}

.editor img {
    height: auto;
    margin: 0px auto 15px;
    max-width: 100%;
    display: block;
    border-radius: 10px;
}

.editor a {
    color: #000;
    font-weight: bold;
    text-decoration: underline;
}

.editor p {
    margin-bottom: 20px;
}

.editor p:last-child {
    margin-bottom: 0;
}


.editor h1,
.editor h2,
.editor h3,
.editor h4,
.editor h5,
.editor h6 {
    border: none;
    text-align: left;
    padding: 0;
}

.editor h1:after,
.editor h2:after,
.editor h3:after,
.editor h4:after,
.editor h5:after,
.editor h6:after {
    display: none;
}

.editor h1 {
    font-weight: bold;
    margin-bottom: 20px;
    color: #444;
    padding: 10px 0;
    font-size: 22px;
    border-bottom: dotted 3px #F19A89;
}

.editor h2 {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 20px;
    background-color: rgba(70, 70, 70, 0.2);
    padding: 10px;
}

.editor h3 {
    font-size: 1.1em;
    margin-bottom: 20px;
    color: #444;
    font-weight: bold;
    border-bottom: 2px dashed #F19A89;
    padding-bottom: 5px;
}

.editor h4 {
    font-size: 1em;
    font-weight: bold;
    margin-bottom: 10px;
    border-left: 8px solid #F19A89;
    padding: 5px 0 5px 10px;
}

.editor h5 {
    font-size: 0.9em;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 10px;
    border: 1px solid #F19A89;
    border-radius: 5px;
}

.editor h6 {
    font-size: 0.9em;
    font-weight: bold;
    position: relative;
    color: #333;
    padding-left: 25px;
    margin-bottom: 10px;
}

.editor h6::after {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    width: 13px;
    height: 13px;
    background-color: #F19A89;
    border-radius: 100%;
}

.editor strong {
    font-weight: bold;
}

.editor em {
    font-style: italic;
}

.editor ul,
.editor ol {
    margin-bottom: 20px;
}

.editor ul li,
.editor ol li {
    padding: 0px 30px 0px 0px;
    margin-left: 20px;
}

.editor ul li {
    list-style: disc outside;
}

.editor ol li {
    list-style: decimal outside;
}

.editor blockquote {
    border: 1px solid #ccc;
    background-color: #fff;
    padding: 10px;
    margin: 0px 0px 30px 0px;
}

.editor blockquote p:last-child {
    margin-bottom: 0;
}

.editor .aligncenter,
img.aligncenter {
    clear: both;
    display: block;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
}

.editor .alignleft,
.editor img.alignleft {
    display: inline;
    float: left;
    margin-right: 24px;
    margin-bottom: 15px;
}

.editor .alignright,
.editor img.alignright {
    display: inline;
    float: right;
    margin-left: 24px;
    margin-bottom: 15px;
}

.editor img.alignleft,
.editor img.alignright,
.editor img.aligncenter {
    margin-bottom: 12px;
}

.editor .wp-caption {
    background: #f1f1f1;
    line-height: 18px;
    margin-bottom: 20px;
    max-width: 632px !important;
    padding: 4px;
    text-align: center;
}

.editor .wp-caption img {
    margin: 5px 5px 0;
}

.editor .wp-caption p.wp-caption-text {
    color: #888;
    font-size: 12px;
    margin: 5px;
}

.editor table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 40px;
}

.editor table th {
    padding: 10px;
    border-top: 1px solid #c7c7c7;
    border-bottom: 1px solid #c7c7c7;
    text-align: left;
    color: #363636;
    background: #e0e0e0;
}

.editor table td {
    background: #fff;
    padding: 10px 20px;
    border-top: 1px solid #c7c7c7;
    border-bottom: 1px solid #c7c7c7;
}

@media (max-width: 600px) {
	.editor_area {
	    max-width: 900px;
	    width: auto;
	    padding: 25px 15px;
	}
}
/* 2024/01/19 add  end */

