@charset "UTF-8";

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

img {
    max-width: 100%;
    border-style: none;
    /* Remove border when inside `a` element in IE 8/9/10 */
    vertical-align: bottom;
}


/* 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+ */
}


/* # =================================================================
# Accessibility
# ================================================================= */


/* 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: #978475;
    text-shadow: none;
}

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

li {
    font-size: 14px;
    font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
    li {
        font-size: 12px;
        font-size: 1.2rem;
    }
}

a {
    color: #978475;
    text-decoration: none;
    transition: all .5s ease-in-out;
}

a:hover {
    /*text-decoration: underline;*/
}

#container p,
#container a,
#container li {
    letter-spacing: 0.1em;
    font-weight: 300;
}


/*----------------------------------------------------
☆font
----------------------------------------------------*/

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 100;
    src: url(fonts/notoserif/SourceHanSerifJP-ExtraLight.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-ExtraLight.woff) format("woff");
}

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 200;
    src: url(fonts/notoserif/SourceHanSerifJP-Light.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-Light.woff) format("woff");
}

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 300;
    src: url(fonts/notoserif/SourceHanSerifJP-Regular.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-Regular.woff) format("woff");
}

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 400;
    src: url(fonts/notoserif/SourceHanSerifJP-Medium.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-Medium.woff) format("woff");
}

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 500;
    src: url(fonts/notoserif/SourceHanSerifJP-SemiBold.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-SemiBold.woff) format("woff");
}

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 600;
    src: url(fonts/notoserif/SourceHanSerifJP-Bold.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-Bold.woff) format("woff");
}

@font-face {
    font-family: 'notoserif';
    font-style: normal;
    font-weight: 700;
    src: url(fonts/notoserif/SourceHanSerifJP-Heavy.woff2) format("woff2"), url(fonts/notoserif/SourceHanSerifJP-Heavy.woff) format("woff");
}

.notoserif1 {
    font-weight: 100;
    font-family: 'notoserif';
}

.notoserif2 {
    font-weight: 200;
    font-family: 'notoserif';
}

.notoserif3 {
    font-weight: 300;
    font-family: 'notoserif';
}

.notoserif4 {
    font-weight: 400;
    font-family: 'notoserif';
}

.notoserif5 {
    font-weight: 500;
    font-family: 'notoserif';
}

.notoserif6 {
    font-weight: 600;
    font-family: 'notoserif';
}

.notoserif7 {
    font-weight: 700;
    font-family: 'notoserif';
}


/*----------------------------------------------------
☆basecompo
----------------------------------------------------*/

.wrapper {
    padding-top: 0;
}

.container {
    padding: 40px 0 100px;
}


/*----------------------------------------------------
	☆keyframes
----------------------------------------------------*/

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}


/*----------------------------------------------------
	☆animation
----------------------------------------------------*/

.imgEf_01.active,
.imgEf_02.active {
    transform: scale(1);
    opacity: 1;
    transform: skewX(0);
}

.imgEf_01 {
    transform: scale(1.06);
    transition: 1.8s;
    opacity: 0;
    transform: skewX(5deg);
}

.imgEf_02 {
    transform: scale(1.06);
    transition: 1.8s;
    opacity: 0;
}

.imgSlideTop {
    overflow: hidden;
    position: relative;
    opacity: 0;
    -webkit-transition: .3s;
    -moz-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

.imgSlideTop::before {
    background-color: #fff;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
}

.imgSlideTop.active::before {
    top: 100%;
    transition: all 1.2s ease 0.2s;
}

.imgSlideTop.active {
    opacity: 1;
}

.fadeTop_02 {
    opacity: 0;
    transition: 1.0s;
    top: -60px !important;
    z-index: 99;
}

.fadeTop_02.active {
    opacity: 1;
    top: -35px !important;
}

@media screen and (max-width: 768px) {
    .fadeTop_02.active {
        top: -20px !important;
    }
}

.fadeLeft {
    opacity: 0;
    transition: 1.8s;
    left: -30px !important;
}

.fadeLeft_02 {
    transform: translate3d(-15%, 0, 0) !important;
    transition: 1.8s;
    opacity: 0;
}

.fadeLeft_02.active {
    transform: translate3d(0, 0, 0) !important;
    opacity: 1;
}

.fadeLeft.active {
    opacity: 1;
    left: 0 !important;
}

.fadeBlur {
    opacity: 0;
    filter: blur(20px);
    transition: all 1.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fadeBlur.active {
    opacity: 1 !important;
    filter: blur(0) !important;
}


/*----------------------------------------------------
	☆indent
----------------------------------------------------*/

.indList li {
    text-indent: -1em;
    padding-left: 1em;
}

.indTx {
    text-indent: -1em;
    padding-left: 1em;
}


/*----------------------------------------------------
	☆set padding
----------------------------------------------------*/

.setPad_20 {
    padding: 20px 0;
}

.setPad_40 {
    padding: 40px 0;
}

.setPad_60 {
    padding: 60px 0;
}

.setPad_80 {
    padding: 80px 0;
}

@media screen and (max-width: 768px) {
    .setPad_80 {
        padding: 60px 0;
    }
}

.setPad_100 {
    padding: 100px 0;
}

@media screen and (max-width: 768px) {
    .setPad_100 {
        padding: 80px 0;
    }
}

.setPad_120 {
    padding: 120px 0;
}

@media screen and (max-width: 768px) {
    .setPad_120 {
        padding: 80px 0;
    }
}

.setPad_140 {
    padding: 140px 0;
}

@media screen and (max-width: 768px) {
    .setPad_140 {
        padding: 80px 0;
    }
}


/*----------------------------------------------------
	☆inner
----------------------------------------------------*/

.inrSS {
    width: calc(100% - 40px);
    max-width: 600px;
    margin: 0 auto;
}

.inrS {
    width: calc(100% - 40px);
    max-width: 840px;
    margin: 0 auto;
}

.inrM {
    width: calc(100% - 40px);
    max-width: 1000px;
    margin: 0 auto;
}

.inrL {
    width: calc(100% - 40px);
    max-width: 1200px;
    margin: 0 auto;
}

.inrLL {
    width: calc(100% - 40px);
    max-width: 1400px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .sp100 {
        width: 100% !important;
    }
}


/*----------------------------------------------------
	☆breadcrumb
----------------------------------------------------*/

.breadcrumb {
    width: 100%;
}

.breadcrumb ol {
    width: 100%;
}

.breadcrumb ol li {
    display: inline-block;
    color: #978475;
    font-size: 1.3rem;
    font-weight: 300;
}

.breadcrumb ol a {
    text-decoration: underline;
    line-height: 1;
    color: #978475;
    font-weight: 300;
}

.breadcrumb ol a:hover {
    text-decoration: none;
}


/*----------------------------------------------------
	☆topcontrol
----------------------------------------------------*/

#topcontrol {
    z-index: 999;
    bottom: 40px !important;
    right: 40px !important;
    position: fixed;
}

@media screen and (max-width: 768px) {
    #topcontrol {
        bottom: 15px !important;
        right: 15px !important;
    }
}

#topcontrol a {
    background: url(../cmn_js/libs/scrolltop/scrollup.png) center center no-repeat;
    font-size: 0;
    display: block;
    height: 60px;
    width: 60px;
    background-size: 50px 50px;
    opacity: 0.7;
    transition: all .15s ease-in-out;
}

#topcontrol a:hover {
    background-size: 60px 60px;
    opacity: 1;
}


/*----------------------------------------------------
	☆pcHd
----------------------------------------------------*/

.pcHd {
    width: 100%;
    font-size: 0;
    padding: 30px 40px;
    position: fixed;
    background: #fff;
    z-index: 999;
}

.pcHd .logo {
    width: 20%;
    display: inline-block;
    vertical-align: middle;
}

.pcHd .gNav {
    width: 80%;
    text-align: right;
    display: inline-block;
    vertical-align: middle;
}

.pcHd .gNav li {
    display: inline-block;
    vertical-align: middle;
    margin-left: 35px;
}

@media screen and (max-width: 1079px) {
    .pcHd .gNav li {
        margin-left: 25px;
        font-size: 1.3rem;
    }
}

.pcHd .gNav li a {
    height: 31px;
    line-height: 31px;
    padding: 0.1em 0;
    position: relative;
    display: inline-block;
}

.pcHd .gNav li a::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -25px;
    content: '';
    width: 50px;
    height: 1px;
    background-image: linear-gradient(to right, transparent, #aaa 25%, #aaa 75%, transparent);
    opacity: 0;
    transition: .4s;
}

.pcHd .gNav li a:hover::after {
    bottom: -5px;
    opacity: 1;
}


/*----------------------------------------------------
	☆spHd
----------------------------------------------------*/

.hdLogo {
    line-height: 0;
    padding: 23px 0 0 23px;
}

.hdLogo img {
    height: auto;
}


/*----------------------------------------------------
	☆drawer
----------------------------------------------------*/

.drawer .drawer-nav {
    opacity: 0 !important;
}

.drawer .drawer-nav li {
    font-size: 1.1em;
    list-style-type: none;
    padding: 0;
    width: 100%;
    border-bottom: 1px double #ddd;
    text-align: center;
}

.drawer .drawer-nav li>a {
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    display: block;
    color: #978475;
    padding: 15px 0;
    text-decoration: none;
    letter-spacing: 0.1em;
}

.drawer .drawer-open .drawer-nav {
    opacity: 1 !important;
}

.drawer .drawer-close .drawer-nav {
    opacity: 0 !important;
}

.drawer .drawer-nav li.reserve,
.drawer .drawer-nav li.hojin,
.drawer .drawer-nav.tel {
    border: none;
}

.drawer .drawer-nav .reserve>a {
    background-color: #535d62;
    color: #fff;
}

.drawer .drawer-nav .hojin>a {
    background-color: #999;
    color: #fff;
}

.drawer .drawer-nav .hojin>a span {
    font-size: 1.2rem;
    margin-left: 5px;
}

.drawer .drawer-nav .tel>a {
    background-color: #111;
    color: #fff;
    font-size: 1.8rem;
    font-style: italic;
}

.drawer .drawer-nav .tel>a span {
    margin-right: 5px;
    font-size: 1.4rem;
}

.drawer .drawer-hamburger {
    background: #000;
    padding: 13px 16px 25px;
    width: 60px;
    height: 60px;
    box-sizing: border-box;
}

.drawer .drawer-hamburger-icon,
.drawer .drawer-hamburger-icon:after,
.drawer .drawer-hamburger-icon:before {
    background: #fff;
}


/*-----☆☆ dorawer MENU表記 あり ☆☆-----*/

.drawer .drawer-hamburger {
    width: 65px !important;
    height: 65px !important;
    padding: 0px 21px 30px !important;
}

.drawer .drawer-hamburger .drawer-hamburger-icon:before {
    top: -8px;
}

.drawer .drawer-hamburger .drawer-hamburger-icon:after {
    top: 8px;
}

.drawer .drawer-hamburger span.menuTx {
    color: #fff;
    font-size: 0.9rem;
    border: none;
    letter-spacing: 0.1em;
    top: 38px;
    position: absolute;
    left: 12px;
}


/*----------------------------------------------------
	☆spcvBox
----------------------------------------------------*/

.spcvBox {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 9999;
}

.spcvBox .cvList {
    font-size: 0;
    width: 100%;
}

.spcvBox .cvList>li {
    width: 50%;
    display: inline-block;
    vertical-align: middle;
}

.spcvBox .cvList>li>a {
    display: block;
    padding: 10px 0;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
}

.spcvBox .cvList>li.reserve a {
    background-color: #ed4e5f;
}

.spcvBox .cvList>li.tel a {
    background-color: #2e2827;
}

.spcvBox .cvList>li.tel a span {
    background: url(/shinko/lib/cmn_img/icon_tel_wh.png) left center/13px 13px no-repeat;
    padding-left: 18px;
}

.ft {
    background: #111;
    color: #fff;
    font-size: 0;
}

.ft .boxLeft {
    display: inline-block;
    vertical-align: middle;
    width: 50%;
}

@media screen and (max-width: 768px) {
    .ft .boxLeft {
        width: 100%;
        text-align: center;
    }
}

.ft .boxLeft .ftLogo {
    display: inline-block;
    vertical-align: middle;
    margin-right: 40px;
}

@media screen and (max-width: 768px) {
    .ft .boxLeft .ftLogo {
        margin: 0 0 30px 0;
        display: block;
    }
}

.ft .boxLeft .address {
    display: inline-block;
    vertical-align: middle;
    line-height: 1.6;
}

.ft .boxLeft .address a {
    color: #fff;
}

.ft .boxLeft .address a span {
    font-size: 1.3rem;
    margin-right: 5px;
}

.ft .boxRight {
    display: inline-block;
    vertical-align: middle;
    width: 50%;
    text-align: right;
}

@media screen and (max-width: 768px) {
    .ft .boxRight {
        width: 100%;
        margin-top: 20px;
    }
}

.ft .boxRight p {
    display: inline-block;
    max-width: 300px;
    width: 100%;
}

@media screen and (max-width: 768px) {
    .ft .boxRight p {
        display: block;
        margin: 0 auto;
    }
}

.ft .boxRight p a {
    width: 100%;
    background: #fff;
    text-align: center;
    padding: 18px;
    display: block;
    position: relative;
}

.ft .boxRight p a span.icon-link {
    position: absolute;
    bottom: 8px;
    right: 8px;
    color: #111;
    font-size: 12px;
    transition: all .5s ease-in-out;
}

.ft .boxRight p a:hover {
    opacity: 0.8;
}

.ft .boxRight p a:hover span.icon-link {
    bottom: 10px;
    right: 10px;
}

.ft .ftNavList {
    text-align: center;
}

.ft .ftNavList li {
    display: inline-block;
    margin: 0 25px;
}

@media screen and (max-width: 768px) {
    .ft .ftNavList li {
        margin: 0 15px;
    }
}

.ft .ftNavList li a {
    color: #fff;
    position: relative;
    padding-left: 11px;
}

.ft .ftNavList li a::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 4px;
    border-color: transparent transparent transparent #ffffff;
    transition: all .5s ease-in-out;
}

.ft .ftNavList li a:hover {
    opacity: 0.6;
}

.ft .ftNavList li a:hover::before {
    left: 3px;
}

.ft .btmArea {
    border-top: 1px solid #333;
    padding: 20px 0;
    font-size: 0;
    width: 100%;
}

.ft .btmArea .txLeft {
    text-align: left;
    display: inline-block;
    vertical-align: middle;
    width: 50%;
    font-size: 1.1rem;
}

@media screen and (max-width: 768px) {
    .ft .btmArea .txLeft {
        width: 100%;
        text-align: center;
    }
}

.ft .btmArea .txLeft a {
    color: #fff;
    padding: 0 15px;
}

.ft .btmArea .txLeft a:hover {
    text-decoration: underline;
}

.ft .btmArea .txRight {
    text-align: right;
    display: inline-block;
    vertical-align: middle;
    width: 50%;
    font-size: 1.1rem;
}

@media screen and (max-width: 768px) {
    .ft .btmArea .txRight {
        width: 100%;
        text-align: center;
        margin-top: 15px;
    }
}

.center {
    text-align: center !important;
}

.left {
    text-align: left !important;
}

.right {
    text-align: right !important;
}

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

.top5 {
    margin-top: 5px !important;
}

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

.top15 {
    margin-top: 15px !important;
}

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

.top25 {
    margin-top: 25px !important;
}

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

.top35 {
    margin-top: 35px !important;
}

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

.top45 {
    margin-top: 45px !important;
}

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

.top55,
.top60 {
    margin-top: 55px !important;
}

.top65 {
    margin-top: 65px !important;
}

.top70 {
    margin-top: 70px !important;
}

.top75 {
    margin-top: 75px !important;
}

.top80 {
    margin-top: 5px !important;
}

.top85 {
    margin-top: 85px !important;
}

.top90 {
    margin-top: 90px !important;
}

.top95 {
    margin-top: 95px !important;
}

.top100 {
    margin-top: 75pt !important;
}

.top120 {
    margin-top: 120px !important;
}

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

.btm05,
.btm5 {
    margin-bottom: 5px !important;
}

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

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

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

.btm25 {
    margin-bottom: 25px !important;
}

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

.btm35 {
    margin-bottom: 35px !important;
}

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

.btm45 {
    margin-bottom: 45px !important;
}

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

.btm55 {
    margin-bottom: 55px !important;
}

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

.btm65 {
    margin-bottom: 65px !important;
}

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

.btm75 {
    margin-bottom: 75px !important;
}

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

.btm85 {
    margin-bottom: 85px !important;
}

.btm90 {
    margin-bottom: 90px !important;
}

.btm95 {
    margin-bottom: 95px !important;
}

.btm100 {
    margin-bottom: 75pt !important;
}

.pT0 {
    padding-top: 0 !important;
}

.pT5 {
    padding-top: 5px !important;
}

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

.pT15 {
    padding-top: 15px !important;
}

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

.pT25 {
    padding-top: 25px !important;
}

.pT30 {
    padding-top: 30px !important;
}

.pT35 {
    padding-top: 35px !important;
}

.pT40 {
    padding-top: 40px !important;
}

.pT45 {
    padding-top: 45px !important;
}

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

.pB5 {
    padding-bottom: 5px !important;
}

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

.pB15 {
    padding-bottom: 15px !important;
}

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

.lm5 {
    margin-left: 5px !important;
}

.lm10 {
    margin-left: 10px !important;
}

.lm15 {
    margin-left: 15px !important;
}

.lm20 {
    margin-left: 20px !important;
}

.lm50 {
    margin-left: 50px !important;
}

.lm60 {
    margin-left: 60px !important;
}

.lm70 {
    margin-left: 70px !important;
}

.rm5 {
    margin-right: 5px !important;
}

.rm10 {
    margin-right: 10px !important;
}

.rm15 {
    margin-right: 15px !important;
}

.rm20 {
    margin-right: 20px !important;
}

.vAT {
    vertical-align: top !important;
}

.vAM {
    vertical-align: middle !important;
}

.vAB {
    vertical-align: bottom !important;
}

.bold {
    font-weight: 700;
}

.normal {
    font-weight: 400;
}

.w5 {
    width: 5% !important;
}

.w10 {
    width: 10% !important;
}

.w15 {
    width: 15% !important;
}

.w18 {
    width: 18% !important;
}

.w20 {
    width: 20% !important;
}

.w25 {
    width: 25% !important;
}

.w30 {
    width: 30% !important;
}

.w35 {
    width: 35% !important;
}

.w40 {
    width: 40% !important;
}

.w45 {
    width: 45% !important;
}

.w49 {
    width: 49% !important;
}

.w50 {
    width: 50% !important;
}

.w55 {
    width: 55% !important;
}

.w60 {
    width: 60% !important;
}

.w65 {
    width: 65% !important;
}

.w70 {
    width: 70% !important;
}

.w75 {
    width: 75% !important;
}

.w77 {
    width: 77% !important;
}

.w80 {
    width: 80% !important;
}

.w85 {
    width: 85% !important;
}

.w90 {
    width: 90% !important;
}

.w95 {
    width: 95% !important;
}

.w100 {
    width: 100% !important;
}

.fltL {
    float: left;
}

.fltR {
    float: right;
}

.size10 {
    font-size: 1rem !important;
}

.size11 {
    font-size: 1.1rem !important;
}

.size12 {
    font-size: 1.2rem !important;
}

.size13 {
    font-size: 1.3rem !important;
}

.size14 {
    font-size: 1.4rem !important;
}

.size15 {
    font-size: 1.5rem !important;
}

.size16 {
    font-size: 1.6rem !important;
}

.size17 {
    font-size: 1.7rem !important;
}

.size18 {
    font-size: 1.8rem !important;
}

.size19 {
    font-size: 1.9rem !important;
}

.size20 {
    font-size: 2rem !important;
}

.size21 {
    font-size: 2.1rem !important;
}

.size22 {
    font-size: 2.2rem !important;
}

.size23 {
    font-size: 2.3rem !important;
}

.size24 {
    font-size: 2.4rem !important;
}

@media screen and (max-width: 768px) {
    .top50 {
        margin-top: 40px !important;
    }
    .top55,
    .top60 {
        margin-top: 40px !important;
    }
    .top65 {
        margin-top: 40px !important;
    }
    .top70 {
        margin-top: 40px !important;
    }
    .top75 {
        margin-top: 40px !important;
    }
    .top80 {
        margin-top: 40px !important;
    }
    .top85 {
        margin-top: 40px !important;
    }
    .top90 {
        margin-top: 40px !important;
    }
    .top95 {
        margin-top: 40px !important;
    }
    .top100 {
        margin-top: 40px !important;
    }
    .top120 {
        margin-top: 80px !important;
    }
}


/*----------------------------------------------------
	☆COMMON
----------------------------------------------------*/

.inPage #container {
    padding: 3% 0 5%;
    margin-top: 0!important;
}

@media screen and (max-width: 768px) {
    .inPage #container {
        padding: 40px 0 80px;
    }
}

.inPage .bgStyle_01 {
    background: url(/shinko/lib/cmn_img/ptn01.png) repeat;
}

.mv::before,
.mv::after {
    content: none;
}

.inPage .mv .mainTtl {
    padding: 5% 0 3% 0;
    text-align: center;
    font-size: 3.8rem;
    letter-spacing: 0.5em;
}

@media screen and (max-width: 768px) {
    .inPage .mv .mainTtl {
        padding: 80px 0 50px;
        font-size: 2.6rem;
    }
}

.inPage .mv .mainTtl span {
    display: block;
    font-size: 1.6rem;
    letter-spacing: 0.15em;
}

@media screen and (max-width: 768px) {
    .inPage .mv .mainTtl span {
        font-size: 1.4rem;
    }
}

.inPage .mv .mainImg {
    width: calc(100% - 80px);
    margin: 0 auto;
    height: 400px;
    background: no-repeat center center / cover;
}

@media screen and (max-width: 768px) {
    .inPage .mv .mainImg {
        width: calc(100% - 40px);
        height: 160px;
    }
}

.inPage .layStyle_01 {
    width: 100%;
    font-size: 0;
    overflow: hidden;
    zoom: 1;
}

.inPage .layStyle_01 .txBox {
    width: 70%;
    font-size: 1.4rem;
    line-height: 2.8;
}

@media screen and (max-width: 768px) {
    .inPage .layStyle_01 .txBox {
        width: 100%;
        font-size: 1.3rem;
    }
}

.inPage .layStyle_01 .imgBox {
    width: 26%;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .inPage .layStyle_01 .imgBox {
        width: 100%;
    }
}

.inPage .layStyle_01 .flL {
    float: left;
    margin-right: 4%;
}

@media screen and (max-width: 768px) {
    .inPage .layStyle_01 .flL {
        float: none;
        margin: 0 0 30px 0;
    }
}

.inPage .layStyle_01 .flR {
    float: right;
}

@media screen and (max-width: 768px) {
    .inPage .layStyle_01 .flR {
        float: none;
    }
}

.inPage .clmStyle_04 {
    font-size: 0;
    width: 100%;
}

.inPage .clmStyle_04>li {
    width: 23.5%;
    display: inline-block;
    vertical-align: top;
    margin-right: 2%;
}

@media screen and (max-width: 768px) {
    .inPage .clmStyle_04>li {
        width: 48.5%;
        margin-right: 3%;
        margin-bottom: 3%;
    }
    .inPage .clmStyle_04>li:nth-child(2n) {
        margin-right: 0;
    }
}

.inPage .clmStyle_04>li.last {
    margin-right: 0;
}

.inPage .clmStyle_03 {
    font-size: 0;
    width: 100%;
    text-align: center;
    letter-spacing: 0;
}

.inPage .clmStyle_03>li {
    width: 32%;
    display: inline-block;
    vertical-align: top;
    margin-right: 2%;
}

@media screen and (max-width: 768px) {
    .inPage .clmStyle_03>li {
        width: 48.5%;
        margin-right: 3%;
        margin-bottom: 3%;
    }
    .inPage .clmStyle_03>li:nth-child(2n) {
        margin-right: 0;
    }
}

.inPage .clmStyle_03>li.last {
    margin-right: 0;
}

.inPage .ttlStyle_01 {
    font-size: 3.0rem;
    font-weight: 300;
    letter-spacing: 0.15em;
    text-align: center;
    margin-bottom: 50px;
    position: relative;
}

@media screen and (max-width: 768px) {
    .inPage .ttlStyle_01 {
        font-size: 2.4rem;
        margin-bottom: 50px;
    }
}

.inPage .ttlStyle_01::before {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 50%;
    margin-left: -40px;
    background-image: linear-gradient(to right, transparent, #aaa 25%, #aaa 75%, transparent);
    width: 80px;
    height: 1px;
}

.inPage .ttlStyle_02 {
    font-size: 2.0rem;
    letter-spacing: 0.3em;
    margin-bottom: 10px;
    display: inline-block;
    position: relative;
}

.inPage .ttlStyle_02::before {
    content: "";
    position: absolute;
    width: 55px;
    height: 1px;
    background: #999;
    right: -70px;
    bottom: 12px;
}

@media screen and (max-width: 768px) {
    .inPage .ttlStyle_02::before {
        width: 40px;
        right: -55px;
    }
}

@media screen and (max-width: 768px) {
    .inPage .ttlStyle_02 {
        font-size: 1.8rem;
    }
}

.inPage .grayBox {
    width: 100%;
    padding: 30px;
    background: #eee;
    border: 1px solid #ddd;
    font-size: 1.3rem;
    line-height: 1.8;
}

@media screen and (max-width: 768px) {
    .inPage .grayBox {
        padding: 20px;
    }
}

.inPage .cauTx {
    font-size: 1.2rem;
    color: #999;
}

.inPage .telList {
    text-align: center;
}

.inPage .telList>li {
    display: inline-block;
    margin: 0 20px;
}

.inPage .telList>li a {
    font-size: 2.2rem !important;
    letter-spacing: 0.03em !important;
}

.inPage .telList>li a span {
    margin-right: 5px;
    font-size: 1.8rem;
}


/*----------------------------------------------------
	☆ABOUT
----------------------------------------------------*/

.inPage.about .ct02 {
    background: no-repeat url(/shinko/lib/cmn_img/about/img02.jpg) center center/cover;
}

.inPage.about .ct02 .shishinList>li {
    background: #fff;
    border: 1px solid #ddd;
    padding: 40px 10px;
    position: relative;
}

@media screen and (max-width: 768px) {
    .inPage.about .ct02 .shishinList>li {
        padding: 25px 10px;
    }
}

.inPage.about .ct02 .shishinList>li::before {
    position: absolute;
    top: 0;
    left: 0;
    background: #111;
    color: #fff;
    font-size: 1.8rem;
    padding: 6px;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    .inPage.about .ct02 .shishinList>li::before {
        font-size: 1.4rem;
    }
}

.inPage.about .ct02 .shishinList>li:nth-child(1)::before {
    content: "01";
}

.inPage.about .ct02 .shishinList>li:nth-child(2)::before {
    content: "02";
}

.inPage.about .ct02 .shishinList>li:nth-child(3)::before {
    content: "03";
}

.inPage.about .ct02 .shishinList>li:nth-child(4)::before {
    content: "04";
}

.inPage.about .ct02 .shishinList>li>.in {
    display: table;
    width: 100%;
    height: 100%;
    text-align: center;
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
    .inPage.about .ct02 .shishinList>li>.in {
        font-size: 1.3rem;
    }
}

.inPage.about .ct02 .shishinList>li>.in>p {
    display: table-cell;
    vertical-align: middle;
}

@media screen and (max-width: 768px) {
    .inPage.about .ct02 .shishinList>li>.in>p {
        text-align: left;
    }
}

.inPage.about .ct03 table {
    font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
    .inPage.about .ct03 table {
        font-size: 1.3rem;
    }
}


/*----------------------------------------------------
	☆SERVICE
----------------------------------------------------*/

.inPage.service .grayBox {
    overflow: hidden;
    zoom: 1;
}

.inPage.service .grayBox .tx {
    width: calc(100% - 250px);
    float: left;
}

@media screen and (max-width: 768px) {
    .inPage.service .grayBox .tx {
        width: 100%;
        float: none;
        margin-bottom: 20px;
    }
}

.inPage.service .grayBox .btnStyle_01 {
    float: right;
}

@media screen and (max-width: 768px) {
    .inPage.service .grayBox .btnStyle_01 {
        float: none;
    }
}

.inPage.service .grayBox .btnStyle_01 a {
    margin: 0;
    text-align: center;
}

.inPage.service .ct02 .mealList li {
    background: #fff;
    border: 1px solid #eee;
}

.inPage.service .ct02 .mealList li .tx {
    padding: 10px;
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
    .inPage.service .ct02 .mealList li .tx {
        font-size: 1.4rem;
    }
}


/*----------------------------------------------------
	☆facility
----------------------------------------------------*/

.inPage.facility .mainTx {
    line-height: 2.6;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .inPage.facility .mainTx {
        text-align: left;
    }
}

.inPage.facility .faList li {
    transition: all .5s ease-in-out;
    background: url(/shinko/lib/cmn_img/ptn01.png) repeat;
    position: relative;
}

.inPage.facility .faList li::before {
    content: "＋";
    position: absolute;
    bottom: 10px;
    right: 10px;
    line-height: 1;
    font-size: 1.3rem;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

@media screen and (max-width: 768px) {
    .inPage.facility .faList li {
        width: 48.5% !important;
        margin-right: 3% !important;
    }
    .inPage.facility .faList li:nth-child(2n) {
        margin-right: 0 !important;
    }
}

.inPage.facility .faList li .txBox {
    padding: 25px 30px 30px;
}

.inPage.facility .faList li .txBox .ttl {
    font-size: 1.8rem;
    letter-spacing: 0.2em;
    padding-bottom: 13px;
    margin-bottom: 13px;
    border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 768px) {
    .inPage.facility .faList li .txBox .ttl {
        font-size: 1.4rem;
        padding-bottom: 6px;
        margin-bottom: 6px;
    }
}

.inPage.facility .faList li .txBox .tx {
    text-align: left;
    font-size: 1.3rem;
}

@media screen and (max-width: 768px) {
    .inPage.facility .faList li .txBox .tx {
        font-size: 1.2rem;
    }
}

.inPage.facility .faList li:hover {
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
    margin-top: -4px;
}

.inPage.facility .bgStyle_01 .faList li {
    background-image: none;
    background-color: #fff;
}

@media screen and (max-width: 768px) {
    .inPage.facility .faList li {
        width: 100%;
        margin: 0 0 20px 0;
    }
    .inPage.facility .faList li .txBox {
        padding: 20px 15px 25px;
    }
}


/*----------------------------------------------------
	☆guide
----------------------------------------------------*/

.inPage.guide .flowList>li {
    width: 100%;
    margin-bottom: 55px;
    background: #fff;
    padding: 40px;
    font-size: 0;
    position: relative;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li {
        padding: 30px 20px;
    }
}

.inPage.guide .flowList>li .icon-arwbig {
    font-size: 42px;
    line-height: 0;
    position: absolute;
    bottom: -21px;
    left: 50%;
    transform: translateX(-50%);
}

.inPage.guide .flowList>li .ttlBox {
    width: 150px;
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li .ttlBox {
        width: 100%;
    }
}

.inPage.guide .flowList>li .ttlBox .in {
    display: table;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li .ttlBox .in {
        margin-bottom: 15px;
    }
}

.inPage.guide .flowList>li .ttlBox .in .tx {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    font-size: 1.8rem;
    border-right: 1px solid #ddd;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li .ttlBox .in .tx {
        border-right: none;
        border-bottom: 1px solid #ddd;
        padding-bottom: 15px;
        text-align: center;
    }
}

.inPage.guide .flowList>li .ttlBox .in .tx span {
    display: block;
    font-size: 1.2rem;
    letter-spacing: 0.3em;
    color: #999;
    line-height: 1;
}

.inPage.guide .flowList>li .txBox {
    width: calc(100% - 190px);
    margin-left: 40px;
    display: inline-block;
    vertical-align: middle;
    font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li .txBox {
        margin-left: 0;
        width: 100%;
        font-size: 1.3rem;
    }
}

.inPage.guide .flowList>li .txBox .in {
    display: table;
    width: 100%;
    height: 100%;
}

.inPage.guide .flowList>li .txBox .in .tx {
    display: table-cell;
    vertical-align: middle;
}

.inPage.guide .flowList>li .txBox .in .tx .btnWrap {
    text-align: left;
}

.inPage.guide .flowList>li .txBox .in .tx .btnWrap .btnStyle_01 {
    display: inline-block;
    vertical-align: middle;
    padding: 0 3px;
    margin: 0;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li .txBox .in .tx .btnWrap .btnStyle_01 {
        display: block;
        width: 100%;
        margin: 5px 0;
    }
}

.inPage.guide .flowList>li .txBox .in .tx .btnWrap .btnStyle_01 a {
    margin: 0;
    min-width: 220px;
    letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
    .inPage.guide .flowList>li .txBox .in .tx .btnWrap .btnStyle_01 a {
        width: 220px;
        min-width: 220px;
    }
}

.inPage.guide .flowList>li .txBox .in .tx .btnWrap .btnStyle_01 a:hover {
    letter-spacing: 0.15em;
}

.inPage.guide .ct03 .tx {
    line-height: 2.2;
}

.inPage.guide .ct04 .tx {
    line-height: 2.2;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .inPage.guide .ct04 .tx {
        text-align: left;
    }
}

.inPage.guide .ct04 .cauTx {
    text-align: center;
}

@media screen and (max-width: 768px) {
    .inPage.guide .ct04 .cauTx {
        text-align: left;
    }
}


/*----------------------------------------------------
	☆letter
----------------------------------------------------*/

.inPage.letter .readTx {
    text-align: center;
    font-weight: 400;
}

.inPage.letter .letterList>li {
    display: inline-block;
    vertical-align: top;
    width: 49%;
    margin: 0 2% 2% 0;
}

@media screen and (max-width: 768px) {
    .inPage.letter .letterList>li {
        width: 100%;
        margin: 0 0 20px 0;
    }
}

.inPage.letter .letterList>li:nth-child(2n) {
    margin-right: 0;
}

.inPage.letter .letterList>li>a {
    display: block;
    padding: 10px 15px 10px 10px;
    font-size: 0;
    width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    position: relative;
    border: 1px solid #ddd;
}

@media screen and (max-width: 768px) {
    .inPage.letter .letterList>li>a {
        padding: 5px 10px 5px 5px;
    }
}

.inPage.letter .letterList>li>a::before {
    content: "";
    position: absolute;
    right: 3px;
    bottom: 3px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 6px 6px;
    border-color: transparent transparent #000111 transparent;
    transition: all .5s ease-in-out;
}

.inPage.letter .letterList>li>a:hover {
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
    letter-spacing: 0.15em;
}

.inPage.letter .letterList>li>a:hover::before {
    right: 0;
    bottom: 0;
}

.inPage.letter .letterList>li>a .thum {
    width: 120px;
    height: 120px;
    position: relative;
    background-color: #eee;
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 768px) {
    .inPage.letter .letterList>li>a .thum {
        width: 80px;
        height: 80px;
    }
}

.inPage.letter .letterList>li>a .thum img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    font-family: 'object-fit: contain;';
    position: absolute;
    top: 0;
    left: 0;
}

.inPage.letter .letterList>li>a .txBox {
    width: calc(100% - 140px);
    margin-left: 20px;
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    font-size: 1.4rem;
    line-height: 1.7;
}

@media screen and (max-width: 768px) {
    .inPage.letter .letterList>li>a .txBox {
        width: calc(100% - 100px);
        font-size: 1.3rem;
        padding: 10px 0;
    }
}

.inPage.letter .letterList>li>a .txBox .day {
    color: #D5B3E3;
}


/*----------------------------------------------------
	☆news
----------------------------------------------------*/

.inPage.news .newsArea .newsList {
    width: 100%;
}

.inPage.news .newsArea .newsList .txBox {
    width: calc(100% - 40px);
    max-width: 100%;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .inPage.news .newsArea .newsList .txBox {
        width: 100%;
    }
}

.inPage.news .ttlArea {
    padding-bottom: 20px;
    margin-bottom: 40px;
    border-bottom: 1px solid #ddd;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.inPage.news .ttlArea .mainTtl {
    font-size: 2.4rem;
    letter-spacing: 0.15em;
    font-weight: 300;
    color: #978474;
}

@media screen and (max-width: 768px) {
    .inPage.news .ttlArea .mainTtl {
        font-size: 1.8rem;
    }
}

.inPage.news .ttlArea .day {
    color: #f78f9e;
    font-size: 1.4rem;
}


/*----------------------------------------------------
	☆access
----------------------------------------------------*/

.inPage.access .tx_01 {
    font-size: 1.6rem;
    text-align: center;
}

.inPage.access .accessList>li {
    border: 1px solid #ddd;
    position: relative;
    padding: 30px;
    text-align: left;
}

@media screen and (max-width: 768px) {
    .inPage.access .accessList>li {
        width: 100%;
        margin-bottom: 30px;
        padding: 20px;
    }
}

.inPage.access .accessList>li .mainTtl {
    position: absolute;
    top: -13px;
    left: 50%;
    transform: translateX(-50%);
    background: #111;
    padding: 6px 10px;
    border-radius: 50px;
    color: #fff;
    line-height: 1;
}

.inPage.access .accessList>li .ttlStyle_01 {
    font-size: 1.4rem;
    margin-bottom: 10px;
    padding-bottom: 10px;
    line-height: 1.7;
}

.inPage.access .accessList>li .ttlStyle_01::before {
    bottom: 0px;
}

.inPage.access .accessList>li .tx_02 {
    font-size: 1.3rem;
    margin-top: 5px;
}


/*----------------------------------------------------
☆btnStyle
----------------------------------------------------*/

.btnWrap_100 {
    width: 100%;
    margin: 0 auto;
    font-size: 0;
}

.btnWrap_80 {
    width: 80%;
    margin: 0 auto;
    font-size: 0;
}

.btnWrap_60 {
    width: 60%;
    margin: 0 auto;
    font-size: 0;
}

.btnWrap_40 {
    width: 40%;
    margin: 0 auto;
    font-size: 0;
}

.btnWrap_20 {
    width: 20%;
    margin: 0 auto;
    font-size: 0;
}

@media screen and (max-width: 768px) {
    .btnWrap_100,
    .btnWrap_80,
    .btnWrap_60,
    .btnWrap_40,
    .btnWrap_20 {
        width: 100%;
        margin: 0 auto;
    }
}

.btnWrap {
    text-align: center;
    font-size: 0;
}

.btnWrap>.btnStyle_01 {
    display: inline-block !important;
    vertical-align: top;
}

@media screen and (max-width: 768px) {
    .btnWrap>.btnStyle_01 {
        width: 49%;
        margin: 0 2% 2% 0;
    }
}

.btnStyle_01 {
    text-align: center;
}

.btnStyle_01>a {
    min-width: 340px;
    display: inline-block !important;
}

@media screen and (max-width: 768px) {
    .btnStyle_01>a {
        width: 100%;
        min-width: 100%;
    }
}

.btnStyle_table {
    display: table;
    table-layout: fixed;
    text-align: center;
    font-size: 0;
    width: 100%;
}

@media screen and (max-width: 768px) {
    .btnStyle_table {
        text-align: left;
    }
}

.btnStyle_table>li {
    display: table-cell;
    vertical-align: middle;
}

@media screen and (max-width: 768px) {
    .btnStyle_table>li {
        width: 49%;
        margin: 0 2% 2% 0;
        display: inline-block;
    }
}

@media screen and (max-width: 768px) {
    .btnStyle_table>li:nth-child(even) {
        margin-right: 0;
    }
}

.btnStyle_table li a,
.btnStyle_01>a,
.btnStyle_01 input {
    margin: 0 10px;
    background-color: #111;
    color: #fff;
    display: block;
    font-size: 1.6rem;
    padding: 40px 10px;
    line-height: 1.4;
    letter-spacing: 0.2em;
    font-weight: 200;
    text-decoration: none;
    position: relative;
}

.btnStyle_table li a::before,
.btnStyle_01>a::before,
.btnStyle_01 input::before {
    content: "";
    position: absolute;
    top: 50px;
    right: -10px;
    background: url(/shinko/lib/cmn_img/arw01.png) no-repeat center center/21px 6px;
    width: 21px;
    height: 6px;
}

.btnStyle_table li a:hover,
.btnStyle_01>a:hover,
.btnStyle_01 input:hover {
    letter-spacing: 0.3em;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
}

@media screen and (max-width: 768px) {
    .btnStyle_table li a,
    .btnStyle_01>a,
    .btnStyle_01 input {
        margin: 0;
        padding: 26px 5px;
        text-align: center;
        width: 220px;
        min-width: 220px;
        font-size: 1.4rem;
    }
    .btnStyle_table li a::before,
    .btnStyle_01>a::before,
    .btnStyle_01 input::before {
        top: 33px;
    }
}

.btnStyle_01.pdfLink a::before {
    content: "\e905";
    font-family: 'icomoon';
    position: absolute;
    top: auto;
    bottom: 10px;
    right: 10px;
    background: none;
    font-size: 14px;
    width: 21px;
    height: 21px;
}

.btnStyle_table li a:hover,
.btnStyle_01>a:hover,
.btnStyle_table input:hover {
    background-color: #f78f9e;
    color: #fff;
}

.btnStyle_01.hoverNone a:hover {
    background-color: #111;
    box-shadow: 0 0 0 0;
    letter-spacing: 0.2em;
}

.btnStyle_01.sizeS a {
    min-width: 150px;
    font-size: 1.4rem;
    padding: 10px;
}

.btnStyle_01.sizeS a::before {
    top: 18px;
}

@media screen and (max-width: 768px) {
    .btnStyle_01.sizeS a {
        font-size: 1.3rem;
    }
}

.btnStyle_01.sizeS.wh a {
    background-color: rgba(0, 0, 0, 0);
    border: 1px solid #fff;
}

.btnStyle_01.sizeS.wh a::before {
    background-image: url(/shinko/lib/cmn_img/arw02.png);
}

.btnStyle_01.sizeS.bl a {
    background-color: rgba(0, 0, 0, 0);
    border: 1px solid #111;
    color: #111;
}

.btnStyle_01.sizeS.bl a::before {
    background-image: url(/shinko/lib/cmn_img/arw03.png);
}

.btnStyle_01.sizeM a {
    padding: 20px;
    min-width: 200px;
    font-size: 1.4rem;
}

.btnStyle_01.sizeM a::before {
    top: 27px;
}


/*--input--*/

.subscribeBtn {
    width: 100%;
}


/*--inputBtn--*/

.subscribeBtn {
    text-align: center;
    font-size: 0;
    width: 60%;
    margin: 0 auto;
}

.subscribeBtn input {
    font-size: 1.4rem;
    background-color: #b09a58;
    border: 1px solid #b09a58;
    color: #FFF !important;
    display: inline-block;
    padding: 15px 0 13px;
    width: 49%;
    line-height: 140%;
    text-decoration: none;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.subscribeBtn input:hover {
    background-color: #7d6d3b;
}

.subscribeBtn input.gray {
    background-color: #d7d7d7;
    border: 1px solid #d7d7d7;
    color: #FFF;
    margin-right: 2%;
}

.subscribeBtn input.gray:hover {
    background-color: #999;
    color: #fff !important;
}


/*----------------------------------------------------
☆newsArea
----------------------------------------------------*/

.newsArea .newsList {
    width: calc(100% - 80px);
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .newsArea .newsList {
        width: calc(100% - 40px);
    }
}

.newsArea .newsList>li>a {
    padding: 23px 0;
    display: block;
    font-size: 0;
    border-top: 1px solid #ddd;
    position: relative;
    font-size: 0;
}

@media screen and (max-width: 768px) {
    .newsArea .newsList>li>a {
        padding: 18px 0;
    }
}

.newsArea .newsList>li>a:hover {
    background-position: center right;
    background-color: rgba(255, 255, 255, 0.6);
    padding-left: 6px;
}

.newsArea .newsList>li>a .txBox {
    font-size: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    width: calc(100% - 40px);
    max-width: 1000px;
    margin: 0 auto;
    padding-right: 25px;
    position: relative;
}

@media screen and (max-width: 768px) {
    .newsArea .newsList>li>a .txBox {
        width: 100%;
    }
}

.newsArea .newsList>li>a .txBox:hover::before {
    right: 10px;
}

.newsArea .newsList>li>a .txBox::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 3.5px;
    border-color: transparent transparent transparent #f78f9e;
    transition: .3s;
}

.newsArea .newsList>li>a .txBox .tx {
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 9em);
    font-size: 1.4rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #978474;
    font-weight: 300;
}

@media screen and (max-width: 414px) {
    .newsArea .newsList>li>a .txBox .tx {
        font-size: 1.3rem;
        width: 100%;
    }
}

.newsArea .newsList>li>a .txBox .day {
    font-size: 1.4rem;
    color: #f78f9e;
    width: 8em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.5em;
    font-weight: 300;
}

@media screen and (max-width: 414px) {
    .newsArea .newsList>li>a .txBox .day {
        width: 100%;
        display: block;
        margin: 0;
    }
}

.newsArea .newsList>li.last a {
    border-bottom: 1px solid #ddd;
}


/*----------------------------------------------------
☆Pager
----------------------------------------------------*/

.pagerArea ul.pagerList {
    width: 100%;
    margin: 30px auto 0 auto;
    text-align: center;
    font-size: 0;
}

.pagerArea ul.pagerList li {
    display: inline-block;
    margin-right: 4px;
}

.pagerArea ul.pagerList li a {
    display: block;
    padding: 4px 12px;
    color: #978475;
    text-decoration: none;
    border: 1px solid #978474;
    font-size: 1.2rem;
    position: relative;
    line-height: normal;
    font-weight: 300;
}

.pagerArea ul.pagerList li a.current {
    background-color: #f78f9e;
    color: #fff;
}

.pagerArea ul.pagerList li a:hover {
    background-color: #f78f9e;
    color: #fff;
}

.pagerArea ul.pagerList li a::before,
.pagerArea ul.pagerList li a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 7px;
    top: 10px;
}

.pagerArea ul.pagerList li.prev a {
    padding-left: 22px;
}

.pagerArea ul.pagerList li.next a {
    padding-right: 22px;
}

.pagerArea ul.pagerList li.prev a::before {
    left: 10px;
    background: url(/shinko/lib/cmn_img/arw_bl.png) no-repeat center center/5px 7px;
}

.pagerArea ul.pagerList li.next a::after {
    right: 10px;
    background: url(/shinko/lib/cmn_img/arw_bl.png) no-repeat center center/5px 7px;
    transform: rotate(180deg);
}

.pagerArea ul.pagerList li.prev a:hover::before {
    left: 10px;
    background: url(/shinko/lib/cmn_img/arw_wh.png) no-repeat center center/5px 7px;
}

.pagerArea ul.pagerList li.next a:hover::after {
    right: 10px;
    background: url(/shinko/lib/cmn_img/arw_wh.png) no-repeat center center/5px 7px;
    transform: rotate(180deg);
}


/*----------------------------------------------------
☆archive
----------------------------------------------------*/

.newsStyle {
    font-size: 0;
}

.newsWrap {
    width: calc(100% - 260px);
    display: inline-block;
    vertical-align: top;
    margin-right: 60px;
}

@media screen and (max-width: 768px) {
    .newsWrap {
        width: 100%;
        margin: 0;
    }
}

.archiveArea {
    display: inline-block;
    vertical-align: top;
    width: 200px;
    font-size: 1.2rem;
    text-align: center;
    letter-spacing: 0.15em;
}

@media screen and (max-width: 768px) {
    .archiveArea {
        width: 100%;
    }
}

.archiveArea .archiveList>li.ttl {
    color: #fff;
    padding: 10px 0;
    background: #000;
    font-size: 1.3rem;
}

@media screen and (max-width: 768px) {
    .archiveArea .archiveList>li.ttl {
        padding: 6px 0;
        font-size: 1.2rem;
    }
}

.archiveArea .archiveList>li>a {
    padding: 15px 0;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
    display: block;
    width: 100%;
    font-size: 1.2rem;
}

.archiveArea .archiveList>li>a:hover {
    background: #eee;
}

@media screen and (max-width: 768px) {
    .archiveArea .archiveList>li>a {
        padding: 10px 0;
    }
}

@media screen and (max-width: 768px) {
    .archiveArea .archiveList {
        width: calc(50% - 10px);
        margin: 0 0 20px 0 !important;
        display: inline-block;
        vertical-align: top;
    }
    .archiveArea .archiveList.last {
        margin-left: 10px !important;
    }
}

@media screen and (max-width: 768px) {
    .archiveArea {
        margin-top: 60px;
    }
}


/*----------------------------------------------------
	☆Table
----------------------------------------------------*/

table.tblStyle_01 {
    border-collapse: collapse;
    border-left: 1px solid #D0D0D2;
    border-top: 1px solid #D0D0D2;
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

table.tblStyle_01 tr th,
table.tblStyle_01 tr td {
    border-right: 1px solid #D0D0D2;
    border-bottom: 1px solid #D0D0D2;
    line-height: 1.7;
    padding: 18px 20px 15px;
    text-align: left;
    vertical-align: top;
}

@media screen and (max-width: 768px) {
    table.tblStyle_01 tr th,
    table.tblStyle_01 tr td {
        display: block;
        width: 100% !important;
        padding: 12px;
    }
}

table.tblStyle_01 tr th {
    background-color: #E7E7E7;
    vertical-align: middle;
    text-align: center;
}

table.tblStyle_01 tr.head th {
    background-color: #606060;
    color: #FFF;
}

table.tblStyle_01 tr.total th,
table.tblStyle_01 tr td {
    background-color: #FEFDFB;
}

table.tblStyle_01 tr td {
    background-color: #fff;
}

.tblScroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.tblScroll table {
    -webkit-overflow-scrolling: touch;
    margin-bottom: 0;
    width: 1000px !important;
}


/*----*/

table.tblStyle_02 {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

table.tblStyle_02 tr th {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    table.tblStyle_02 tr th {
        padding: 15px 10px 5px 10px;
    }
}

table.tblStyle_02 tr td {
    font-weight: 500;
}

@media screen and (max-width: 768px) {
    table.tblStyle_02 tr td {
        padding: 5px 10px 15px 10px;
    }
}

table.tblStyle_02 tr th,
table.tblStyle_02 tr td {
    background-color: #eeeeee;
    line-height: 1.4;
    padding: 20px 20px 17px;
    text-align: left;
    color: #333 !important;
}

@media screen and (max-width: 768px) {
    table.tblStyle_02 tr th,
    table.tblStyle_02 tr td {
        display: block;
        width: 100% !important;
    }
}

table.tblStyle_02 tr.even th,
table.tblStyle_02 tr td {
    background-color: #fff;
}


/*----*/

table.tblStyle_03 {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

table.tblStyle_03 tr {
    border-top: 1px dashed #aaa;
}

table.tblStyle_03 tr.last {
    border-bottom: 1px dashed #aaa;
}

table.tblStyle_03 tr th {
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    table.tblStyle_03 tr th {
        padding: 15px 10px 5px 10px;
    }
}

table.tblStyle_03 tr td {
    font-weight: 500;
}

@media screen and (max-width: 768px) {
    table.tblStyle_03 tr td {
        padding: 5px 10px 15px 10px;
    }
}

table.tblStyle_03 tr th,
table.tblStyle_03 tr td {
    line-height: 1.4;
    padding: 25px 25px;
    text-align: left;
}

@media screen and (max-width: 768px) {
    table.tblStyle_03 tr th,
    table.tblStyle_03 tr td {
        display: block;
        width: 100% !important;
    }
}


/*----*/

.mv {
    height: 120px;
    position: relative;
    overflow: hidden;
    background-color: #fff;
}

.mv h1 {
    position: absolute;
    bottom: -10em;
    width: 20%;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    background-color: #FBEBFF;
    padding: 3em 0 10em;
    border-radius: 100%;
    color: #978475;
    left: calc( 50% - 10%);
}

.mv h1 span {
    font-size: 26px;
    text-align: center;
    display: block;
    line-height: 1.7;
}

.mv h1 small img {
    width: 5em;
    margin: 0 auto;
    display: block;
}

#bbk {
    background-color: #FBEBFF;
}

.mv {
    margin-top: 270px;
}

.breadcrumb {
    margin-top: 5%;
}

@media (max-width: 1000px) {
    #container {
        margin-top: 0;
    }
    .mv {
        margin-top: 0;
    }
    .mv h1 {
        width: 70%;
        left: calc( 50% - 35%);
    }
    .pagerArea ul.pagerList li {
        margin-right: 2px;
    }
    .breadcrumb {
        padding-top: 20px!important;
        position: relative;
        z-index: 9;
    }
}
