@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
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, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.mincho {
    font-family: "游明朝","YuMincho","Hiragino Mincho Pro","MS PMincho","ＭＳ Ｐ明朝","ヒラギノ明朝 Pro W6",serif;
}
.roboto {
    font-family: 'Roboto', sans-serif;
}

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
}
a,
a:link {
	color: #333333;
	text-decoration: none;
}
a:visited {
	color: #333333;
}
a:hover {
	color: #333333;
}
a:active {
	color: #333333;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 1200px;
	color: #333333;
	font-size: 1.5rem;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}
#container {
	text-align: left;
}
#main {
    margin-bottom: 130px;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: 320px;
		font-size: 1.3rem;
	}
    body.fixed {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
    }
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
    #main {
        margin-bottom: 84px;
    }
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
    padding: 30px 0 25px;
	background: #fff;
}
#gHeader .hInner {
    margin: 0 auto;
    width: 1160px;
    position: relative;
}
#gHeader h1 {
    margin-bottom: 41px;
    text-align: center;
}
#gHeader .snsUl {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: -4px;
    right: 0;
}
#gHeader .snsUl li {
    padding-left: 12px;
}
#gHeader .snsUl li a:hover img {
    opacity: 0.7;
}
.fixdBox {
    padding: 10px 0 5px;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: #fff;
}
.fixdBox ul {
    margin: 0 45px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.fixdBox .menu a.on {
    display: block;
    background: url("img/common/close.png") no-repeat center center;
    background-size: 36px auto;
}
.fixdBox .menu a.on img {
    visibility: hidden;
}

@media all and (min-width: 897px) {
    .menuBox {
        display: none !important;
    }
}

@media all and (max-width: 896px) {
	#gHeader {
        padding: 13px 0 7px;
	}
    #gHeader h1 {
        margin-bottom: 0;
    }
    #gHeader .hInner {
        width: auto;
    }
    #gHeader h1 img {
        width: 104px;
    }
    #gHeader .snsUl {
        display: none;
    }
    .menuBox {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 1;
        visibility: hidden;
        overflow-y: auto;
        z-index: 999;
        background-color: #fff;
    }
    .menuBox.on {
        visibility: visible;
    }
    .menuBox ul {
        margin: 0 10px 40px;
    }
    .menuBox li {
        padding: 45px 10px;
        text-align: center;
        letter-spacing: 3px;
        border-bottom: 1px solid #FF8CB9;
    }
    .menuBox li:last-child {
        border: none;
    }
    .menuBox li a {
        font-size: 2.2rem;
        font-weight: bold;
        color: #FF8CB9;
    }
}
/*------------------------------------------------------------
	gNavi
------------------------------------------------------------*/
#gNavi ul {
    display: flex;
    flex-wrap: wrap;
    border-left: 1px solid #C7C8C8;
}
#gNavi li {
    width: 19%;
    text-align: center;
    box-sizing: border-box;
    border-right: 1px solid #C7C8C8;
}
#gNavi li:nth-child(3) {
    width: 20%;
}
#gNavi li:nth-child(5) {
    width: 23%;
}
#gNavi li a {
    padding: 0 1px;
    font-size: 1.6rem;
    font-weight: bold;
    display: inline-block;
    position: relative;
}
#gNavi li a:after {
    left: 0;
    right: 0;
	height: 6px;
    background-color: #fff;
	position: absolute;  
	bottom: -12px;
	content: ""; 
}

@media all and (min-width: 897px) {
    #gNavi li a:hover:after {
        background-color: #FF8CB9;
    }
}
@media all and (max-width: 896px) {
    #gNavi {
        display: none;
    }
}
/*------------------------------------------------------------
	パンクズリスト
------------------------------------------------------------*/
#pagePath {
    margin-bottom: 38px;
}
#pagePath li {
	display: inline;
    font-size: 1rem;
}
#pagePath li a {
    margin-right: 3px;
}

@media all and (min-width: 897px) {
    #pagePath a:hover {
        text-decoration: underline;
    }
}
@media all and (max-width: 896px) {
    #pagePath {
        display: none;
    }
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
    padding: 90px 0 25px;
    background: url("img/common/bg01.jpg") repeat-x center top;
    background-size: auto 94px;
}
#gFooter .pageTop {
    padding: 12px 0 6px;
    text-align: center;
    background-color: #FF8CB9;
}
#gFooter .pageTop a {
    display: inline-block;
    width: 26px;
    height: 26px;
    position: relative;
}
#gFooter .pageTop a img {
    position: absolute;
    top: 0;
    left: 0;
}
#gFooter .pageTop .img02 {
    opacity: 0;
}
#gFooter .fInner {
    margin: 0 auto;
    padding: 42px 0 35px;
    width: 1160px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
#gFooter .fInner .list {
    margin-right: -68px;
    display: flex;
    width: 64%;
    flex-wrap: wrap;
}
#gFooter .fInner .list li {
    margin-right: 86px;
}
#gFooter .fInner .list li:last-child {
    margin-right: 0;
}
#gFooter .fInner .snsUl {
    display: flex;
    flex-wrap: wrap;
}
#gFooter .fInner .snsUl li {
    padding-left: 11px;
}
#gFooter .fInner .snsUl li a:hover img {
    opacity: 0.7;
}
#gFooter .copyright {
    text-align: center;
    font-size: 1.1rem;
    letter-spacing: 3.1px;
}
@media all and (min-width: 897px) {
    #gFooter .pageTop a:hover .img02 {
        opacity: 1;
    }
    #gFooter .pageTop a:hover .img01 {
        opacity: 0;
    }
    #gFooter .fInner .list li a:hover {
        color: #FF8CB9;
    }
}
@media all and (max-width: 896px) {
    #gFooter {
        padding: 95px 0 76px;
        background-image: url("img/common/sp_bg01.jpg");
        background-size: auto 102px;
    }
    #gFooter .fInner {
        display: block;
        width: auto;
        padding: 30px 50px 28px;
    }
    #gFooter .fInner .list {
        margin: 0 -50px 10px 0;
        width: auto;
        justify-content: space-between;
    }
    #gFooter .fInner .list li {
        margin: 0 0 27px;
        width: 50%;
        font-size: 1.8rem;
    }
    #gFooter .fInner .list li:nth-child(2n) {
        width: 40%;
    }
    #gFooter .fInner .snsUl {
        justify-content: center;
    }
    #gFooter .fInner .snsUl li {
        padding: 0 6px;
    }
    #gFooter .fInner .snsUl {
        margin-bottom: 35px;
    }
    #gFooter .fLogo {
        text-align: center;
    }
    #gFooter .copyright {
        letter-spacing: 1.7px;
    }
    #gFooter .pageTop .img02 {
        opacity: 0 !important;
    }

}

/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */	
* html .clearfix {zoom: 1;}
*+html .clearfix {zoom: 1;}
.clearfix:after {height: 0;visibility: hidden;content: ".";display: block;clear: both;}
/* flex */	
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	mainBox
------------------------------------------------------------*/
.mainBox {
    margin: 0 auto;
    width: 1000px;
}
@media all and (max-width: 896px) {
    .mainBox {
        width: auto;
        margin: 0 15px;
    }
}

.mainImg {
    margin-bottom: 12px;
    position: relative;
}
.mainImg:after {
	width: 100%;  
	height: 14px;
    background: url("img/common/bg02.png") repeat-x left bottom;
    background-size: auto 14px; 
	position: absolute;  
	bottom: 0;
	left: 0;  
	content: ""; 
}
.mainImg h2 {
    position: absolute;
    top: 48%;
    width: 100%;
    left: 0;
    font-size: 3rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.43;
    letter-spacing: 18px;
    transform: translateY(-50%);
}
.mainImg h2 > span {
    display: block;
    margin: 0 auto;
    width: 1000px;
}
.mainImg h2 > span span {
    padding-right: 10px;
    display: inline-block;
    position: relative;
}
.mainImg h2 > span span:after {
	width: 9999px;  
	height: 100%;
    background-color: #FF8CB9;
	position: absolute;  
	top: 0;
	right: 0;  
	content: ""; 
    z-index: -1;
    transform: skewX(-20deg);
}

@media all and (max-width: 896px) {
    .mainImg {
        margin-bottom: 56px;
    }
    .mainImg::after {
        bottom: -14px;
    }
    .mainImg h2 {
        letter-spacing: 12px;
        top: 50%;
    }
    .mainImg h2 > span {
        width: auto;
    }
    .mainImg h2 > span span {
        padding: 0 13px 0 15px;
    }
}


/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
    margin-bottom: 76px;
    padding-bottom: 19px;
    font-size: 3rem;
    text-align: center;
    letter-spacing: 6px;
    background: url("img/common/bg03.png") no-repeat center bottom;
    background-size: 90px auto;
}
@media all and (max-width: 896px) {
    .headLine01 {
        margin-bottom: 52px;
        letter-spacing: 3px;
    }
}

/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
    margin-bottom: 34px;
    padding-bottom: 40px;
    font-size: 3rem;
    text-align: center;
    border-bottom: 2px solid #FF8CB9;
}
@media all and (max-width: 896px) {
    .headLine02 {
        font-size: 2.2rem;
        margin-bottom: 34px;
        padding-bottom: 46px;
        letter-spacing: 3px;
    }
}

/*------------------------------------------------------------
	comImgBox
------------------------------------------------------------*/
.comImgBox {
    margin-bottom: 77px;
}
.comImgBox:last-child {
    margin-bottom: 0;
}
.comImgBox .photoBox {
    padding-top: 3px;
    float: left;
}
.comImgBox .textBox {
    margin-top: -6px;
    float: right;
    width: 466px;
}
.comImgBox .textBox p {
    line-height: 32px;
}
.comImgBox .textBox .ttl {
    margin-bottom: 18px;
    font-weight: bold;
    font-size: 2.5rem;
    letter-spacing: 1.4px;
    line-height: 44px;
}
.comImgBox .textBox .list li {
    line-height: 32px;
    text-indent: -1em;
    padding-left: 1em;
}
.comImgBox02 .photoBox {
    float: right;
}
.comImgBox02 .textBox {
    float: left;
}
@media all and (max-width: 896px) {
    .comImgBox {
        margin: 0 20px 53px;
    }
    .comImgBox .textBox .ttl {
        font-size: 1.5rem;
        letter-spacing: 0;
        margin-bottom: 15px;
        line-height: 24px;
    }
    .comImgBox .textBox {
        margin-bottom: 49px;
        width: auto;
        float: none !important;
    }
    .comImgBox .textBox p {
        line-height: 27px;
    }
    .comImgBox .photoBox {
        float: none !important;
    }
    .comImgBox .photoBox img {
        width: 100%;
    }
    .comImgBox .textBox .list li {
        line-height: 27px;
    }
}

/*------------------------------------------------------------
	comUl
------------------------------------------------------------*/
.comUl {
    margin-bottom: 14px;
    display: flex;
    flex-wrap: wrap;
}
.comUl li {
    margin-bottom: 46px;
    width: 304px;
}
.comUl li a {
    display: block;
    position: relative;
}
.comUl li .txtSpan {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 86px;
    color: #fff;
    padding: 4px 2px 3px;
    letter-spacing: -0.5px;
    box-sizing: border-box;
    font-size: 1.1rem;
    font-weight: bold;
    text-align: center;
    background-color: #8CAFE3;
    z-index: 10;
    font-family: 'Roboto', sans-serif;
}
.comUl li .txtSpan02 {
    background-color: #2586D6;
}
.comUl li .txtSpan03 {
    background-color: #90C723;
}
.comUl li .txtSpan04 {
    background-color: #FF8CB9;
}
.comUl li .txtSpan05 {
    background-color: #9358AA;
}
.comUl li .txtSpan06 {
    background-color: #FF9D00;
}
.comUl li .txtSpan07 {
    background-color: #FF515E;
}
.comUl li .txtSpan08 {
    background-color: #00B3CA;
}
.comUl li:nth-child(3n-1) {
    margin-left: 44px;
    margin-right: 43px;
}
.comUl li img {
    width: 100%;
}
.comUl li p {
    font-size: 1.3rem;
    line-height: 27px;
}
.comUl li .photo {
    margin-bottom: 20px;
    overflow: hidden;
}
.comUl li .photo img {
    transition: all ease 0.3s;
	-webkit-transition: all ease 0.3s;
}
.comUl li .ttl {
    margin-bottom: 13px;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 18px;
}
.comUl li .sub {
    margin: 30px 12px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: flex-end;
}
.comUl li .sub .photoBox {
    width: 20%;
    order: 2;
}
.comUl li .sub .textBox {
    padding-right: 14px;
    margin-bottom: -2px;
    text-align: right;
    width: calc(100% - 20%);
    box-sizing: border-box;
}
.comUl li .sub .textBox p {
    font-size: 1.2rem;
    line-height: 24px;
}
@media all and (min-width: 897px) {
    .comUl li a:hover .photo img {
        transform:scale(1.1); 
        -webkit-transform:scale(1.1);
    }
    
}
@media all and (max-width: 896px) {
    .comUl {
        margin: 0 20px 40px;
        display: block;
    }
    .comUl li {
        margin: 0 0 31px !important;
        width: auto;
    }
    .comUl li img {
        width: 100%;
    }
    
}

/*------------------------------------------------------------
	comLinkUl
------------------------------------------------------------*/
.comLinkUl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	clear: both;
}
.comLinkUl li {
    margin: 0 33px;
}
.comLinkUl li .comLink {
    margin: 0;
}
.comLink {
    margin: 0 auto;
    width: 270px;
}
.comLink a {
    padding: 14px 10px;
    display: block;
    text-align: center;
    font-size: 1.9rem;
    font-weight: bold;
    border: 3px solid #90C723;
}
.comLink a span {
    padding-right: 27px;
    display: inline-block;
    background: url("img/common/icon04.png") no-repeat right center;
    background-size: 15px auto;
}
.comLink02 a span {
    background-image: url("img/common/icon03.png");
    background-position: left center;
    padding: 0 0 0 27px;
}

@media all and (min-width: 897px) {
    .comLink a:hover {
        background-color: #90C723;
        color: #fff;
    }
    .comLink a:hover span {
        background-image: url("img/common/icon06.png");
    }
    .comLink02 a:hover span {
        background-image: url("img/common/icon05.png");
    }
}

@media all and (max-width: 896px) {
    .comLinkUl {
        display: block;
    }
    .comLinkUl li {
        margin: 0 auto 32px !important;
        max-width: 270px;
    }
    .comLinkUl li:last-child {
        margin-bottom: 0;
    }
}

/*------------------------------------------------------------
	policy
------------------------------------------------------------*/
.policy .comImgBox {
    margin-bottom: 57px;
}
@media all and (max-width: 896px) {
    .policy .comImgBox .photoBox {
        margin-bottom: 25px;
    }
    .policy .comImgBox .textBox {
        margin-bottom: 0;
    }
}


/*------------------------------------------------------------
	information
------------------------------------------------------------*/
.infoUl {
    padding-top: 7px;
    margin: 0 auto 48px;
    width: 825px;
    display: flex;
    flex-wrap: wrap;
}
.infoUl li {
    margin: 0 15px 15px 0;
    width: 195px;
}
.infoUl li:nth-child(4n) {
    margin-right: 0;
}
.infoUl li a {
    padding: 20px 5px 19px;
    display: block;
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background-color: rgba(37,134,214,0.5);
}
.infoUl .style01 a {
    background-color: rgba(144,199,35,0.5);
}
.infoUl .style02 a {
    background-color: rgba(255,140,185,0.5);
}
.infoUl .style03 a {
    background-color: rgba(147,88,170,0.5);
}
.infoUl .style04 a {
    background-color: rgba(255,157,0,0.5);
}
.infoUl .style05 a {
    background-color: rgba(255,81,94,0.5);
}
.infoUl .style06 a {
    background-color: rgba(0,179,202,0.4);
}
.infoUl .style07 a {
    background-color: rgba(140,175,227,0.5);
}
.infoUl li.on a:hover,
.infoUl li.on a {
    background-color: #2586D6;
}
.infoUl .style01.on a:hover,
.infoUl .style01.on a {
    background-color: #90C723;
}
.infoUl .style02.on a:hover,
.infoUl .style02.on a{
    background-color: #FF8CB9;
}
.infoUl .style03.on a:hover,
.infoUl .style03.on a{
    background-color: #9358AA;
}
.infoUl .style04.on a:hover,
.infoUl .style04.on a{
    background-color: #FF9D00;
}
.infoUl .style05.on a:hover,
.infoUl .style05.on a{
    background-color: #FF515E;
}
.infoUl .style06.on a:hover,
.infoUl .style06.on a{
    background-color: #00B3CA;
}
.infoUl .style07.on a:hover,
.infoUl .style07.on a{
    background-color: #8CAFE3;
}
.information .comUl {
    margin-top: -7px;
}
.detailBox {
    max-width: 880px;
    margin: 0 auto;
}
.detailBox p {
    margin-bottom: 43px;
    line-height: 32px;
}
.detailBox .date {
    margin-bottom: 0;
    font-size: 1rem;
}
.detailBox .photo {
    text-align: center;
    margin-bottom: 34px;
}
.detailBox .comLinkUl li {
    margin: 0 17px;
}
.detailBox .comLinkUl li:first-child {
    margin-left: 0;
}
.detailBox .comLinkUl li:last-child {
    margin-right: 0;
}	
.detailBox .author {
	float: right;
    width: 312px;
    margin-bottom: 100px;
}
.detailBox .author p {
	float: left;
    padding-top: 50px;
	text-align: right;
}
.detailBox .author img {
	float: right;
}
@media all and (min-width: 897px) {
    .infoUl li a:hover {
        background-color: #2586D6;
    }
    .infoUl .style01 a:hover {
        background-color: #90C723;
    }
    .infoUl .style02 a:hover {
        background-color: #FF8CB9;
    }
    .infoUl .style03 a:hover {
        background-color: #9358AA;
    }
    .infoUl .style04 a:hover {
        background-color: #FF9D00;
    }
    .infoUl .style05 a:hover {
        background-color: #FF515E;
    }
    .infoUl .style06 a:hover {
        background-color: #00B3CA;
    }
    .infoUl .style07 a:hover {
        background-color: #8CAFE3;
    }
}

@media all and (max-width: 896px) {
    .information .mainImg {
        margin-bottom: 36px;
    }
    .infoUl {
        margin-bottom: 27px;
        width: auto;
        justify-content: space-between;
    }
    .infoUl li {
        width: 48%;
        margin: 0 0 13px !important;
    }
    .infoUl li a {
        padding-top: 18px;
        font-size: 1.5rem;
    }
    .information .comUl {
        margin-top: -2px;
    }
    .detailBox p {
        font-size: 1.4rem;
        line-height: 34px;
    }
    .detailBox .date {
        font-size: 1.3rem;
    }
    .detailBox .comLinkUl {
        padding-top: 48px;
    }
}

.mainImg02 {
    position: relative;
    background: url("img/index/main_img.jpg") no-repeat center center;
    background-size: cover;
}
.mainImg02:after {
	height: 247px;
    background: url("img/index/bg01.png") no-repeat center bottom;
    background-size: 100% auto;
	position: absolute;  
	bottom: 0;
	left: 0;  
    right: 0;
	content: ""; 
}
.mainImg02 h2 {
    position: absolute;
    top: 46%;
    left: 0;
    width: 100%;
    text-align: center;
    transform: translateY(-50%);
}
.index .message {
    padding: 78px 0 160px;
    background: url("img/index/bg03.png") no-repeat center bottom;
    background-size: 1156px auto;
}
.index .message .headLine01 {
    margin-bottom: 50px;
}
.index .message p {
    max-width: 870px;
    margin: 0 auto;
    font-size: 1.4rem;
    line-height: 35px;
    text-align: center;
}
.index .station {
    padding: 102px 0 100px;
}
.index .station .headLine01 {
    margin-bottom: 50px;
}
.index .station .comUl {
    padding-top: 9px;
}
.index .greeting {
    padding: 60px 0 28px; 
    background: url("img/index/bg02.jpg") no-repeat center top;
    background-size: 100% auto;
	height: 320px;
	margin-bottom: 980px;
}
.index .greeting .mainBox {
    width: 1160px;
}
.index .greeting .whiteBox {
    margin-bottom: 61px;
    padding: 42px 37px 37px;  
    background-color: rgba(255,255,255,0.95);
}
.index .greeting .whiteBox .headLine01 {
    margin-bottom: 48px;
}
.index .greeting .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.index .greeting .inner .photoBox {
    width: 375px;
}
.index .greeting .inner .textBox {
    width: 64.5%;
    padding: 4px 0 0 20px;
    box-sizing: border-box;
}
.index .greeting .inner .textBox p {
    font-size: 1.4rem;
    line-height: 35px;
}
.index .greeting .inner .textBox .ttl {
    margin-bottom: 16px;
    font-size: 2.6rem;
}
.index .greeting .greetUl {
    margin-bottom: 70px;
    display: flex;
    flex-wrap: wrap;
}
.index .greeting .greetUl li {
    margin-bottom: 10px;
    width: 372px;
}
.index .greeting .greetUl li:nth-child(3n-1) {
    margin-left: 22px;
    margin-right: 22px;
}
.index .greeting .greetUl li a {
    padding: 29px 20px 58px;
    text-align: center;
    display: block;
    border: 9px solid #90C723;
    background: url("img/common/icon04.png") no-repeat center bottom 17px #7DBA1A;
    background-size: 25px auto;
}
.index .greeting .greetUl li .img {
    margin-bottom: 36px;
    height: 106px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.index .greeting .greetUl li p {
    line-height: 27px;
}
.index .greeting .greetUl li .ttl {
    margin-bottom: 19px;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 6px;
}
.index .greeting .greetUl li:nth-child(2) a {
    background-color: #E0D5AE;
    border-color: #EFE9D3;
}
.index .greeting .greetUl li:nth-child(3) a {
    background-color: #FF98AA;
    border-color: #FFA9B9;
}

.index .greeting02 {
    padding: 60px 0 0; 
    background-size: 100% auto;
}
.index .greeting02 .mainBox {
    width: 1160px;
}
.index .greeting02 .whiteBox {
    margin-bottom: 61px;
    padding: 42px 37px 0;  
    background-color: rgba(255,255,255,0.95);
}
.index .greeting02 .whiteBox .headLine01 {
    margin-bottom: 48px;
}
.index .greeting02 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.index .greeting02 .inner .photoBox {
    width: 375px;
}
.index .greeting02 .inner .textBox {
    width: 64.5%;
    padding: 4px 0 0 20px;
    box-sizing: border-box;
}
.index .greeting02 .inner .textBox p {
    font-size: 1.4rem;
    line-height: 35px;
}
.index .greeting02 .inner .textBox .ttl {
    margin-bottom: 16px;
    font-size: 2.6rem;
}
.index .greeting02 .greetUl {
    margin-bottom: 70px;
    display: flex;
    flex-wrap: wrap;
}
.index .greeting02 .greetUl li {
    margin-bottom: 10px;
    width: 372px;
}
.index .greeting02 .greetUl li:nth-child(3n-1) {
    margin-left: 22px;
    margin-right: 22px;
}
.index .greeting02 .greetUl li a {
    padding: 29px 20px 58px;
    text-align: center;
    display: block;
    border: 9px solid #90C723;
    background: url("img/common/icon04.png") no-repeat center bottom 17px #7DBA1A;
    background-size: 25px auto;
}
.index .greeting02 .greetUl li .img {
    margin-bottom: 36px;
    height: 106px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.index .greeting02 .greetUl li p {
    line-height: 27px;
}
.index .greeting02 .greetUl li .ttl {
    margin-bottom: 19px;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 6px;
}
.index .greeting02 .greetUl li:nth-child(2) a {
    background-color: #E0D5AE;
    border-color: #EFE9D3;
}
.index .greeting02 .greetUl li:nth-child(3) a {
    background-color: #FF98AA;
    border-color: #FFA9B9;
}

.index .snsList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.index .snsList li {
    width: 564px;
}
.index .snsList li .img {
    margin: 0 2px 13px;
}
.index .snsList li .facebook {
    width: 564px;
    height: 853px;
    text-align: center;
    border: 1px solid #808080;
    background-color: #fff;
}
.fb-page {
    margin: 0 auto;
}
.index .snsList li .twitter {
    width: 564px;
    height: 853px;
    border: 1px solid #808080;
    background-color: #fff;
}
@media all and (min-width: 897px) {
    .index .greeting .greetUl li a:hover {
        color: #fff;
        background-image: url("img/common/icon06.png");
        background-color: #519B05;
    }
    .index .greeting .greetUl li:nth-child(2) a:hover {
        background-color: #C4B277;
    }
    .index .greeting .greetUl li:nth-child(3) a:hover {
        background-color: #FF7B90;
    }
	
	.index .greeting02 .greetUl li a:hover {
        color: #fff;
        background-image: url("img/common/icon06.png");
        background-color: #519B05;
    }
    .index .greeting02 .greetUl li:nth-child(2) a:hover {
        background-color: #C4B277;
    }
    .index .greeting02 .greetUl li:nth-child(3) a:hover {
        background-color: #FF7B90;
    }}

@media all and (max-width: 896px) {
    .mainImg02 { 
        background-image: url("img/index/sp_main_img.jpg");
    }
    .mainImg02 h2 {
        top: 52%;
    }
    .mainImg02 h2 img {
        width: 94%;
    }
    .mainImg02::after {
        height: 14.5%;
        bottom: 0;
        background-image: url("img/index/sp_bg01.png");
    }
    .index .message {
        padding: 135px 0 147px;
    }
    .index .message p {
        line-height: 37px;
        letter-spacing: 1px;
    }
    .index .station {
        padding: 82px 0 81px; 
    }
    .index .station .comUl {
        padding-top: 0;
    }
    .index .station .comUl li {
        margin-bottom: 40px !important;
    }
    .index .greeting {
        padding: 30px 9px;
        background-image: url("img/index/sp_bg02.jpg");
		height: 1110px;
		margin-bottom: 1140px;
    }
    .index .greeting .mainBox {
        width: auto;
    }
    .index .greeting .whiteBox {
        padding: 36px 22px 28px;
        margin-bottom: 30px;
    }
    .index .greeting .whiteBox .headLine01 {
        margin: 0 30px 50px;
    }
    .index .greeting .inner {
        display: block;
    }
    .index .greeting .inner .photoBox {
        width: auto;
    }
    .index .greeting .inner .photoBox img {
        width: 100%;
    }
    .index .greeting .inner .textBox {
        width: auto;
        padding: 40px 5px 0;
    }
    .index .greeting .inner .textBox p {
        text-align: center;
        line-height: 37px;
        letter-spacing: 1px;
    }
    .index .greeting .inner .textBox .ttl {
        margin-bottom: 14px;
        letter-spacing: 1px;
    }
    .index .greeting .greetUl {
        margin: 0 -10px 70px;
        display: block;
    }
    .index .greeting .greetUl li {
        width: auto;
        margin: 0 0 30px !important;
    }
    .index .greeting .greetUl li a {
        padding: 23px 10px 60px;
    }
    .index .greeting .greetUl li .img img {
        width: auto;
        height: 98px;
    }
    .index .greeting .greetUl li .img {
        margin-bottom: 26px;
    }
    .index .greeting .greetUl li .ttl {
        margin-bottom: 23px;
        font-size: 2.5rem;
        letter-spacing: 4px;
    }
    .index .greeting .greetUl li p {
        line-height: 23px;
    }
	
	.index .greeting02 {
        padding: 30px 9px;
    }
    .index .greeting02 .mainBox {
        width: auto;
    }
    .index .greeting02 .whiteBox {
        padding: 36px 22px 28px;
        margin-bottom: 30px;
    }
    .index .greeting02 .whiteBox .headLine01 {
        margin: 0 30px 50px;
    }
    .index .greeting02 .inner {
        display: block;
    }
    .index .greeting02 .inner .photoBox {
        width: auto;
    }
    .index .greeting02 .inner .photoBox img {
        width: 100%;
    }
    .index .greeting02 .inner .textBox {
        width: auto;
        padding: 40px 5px 0;
    }
    .index .greeting02 .inner .textBox p {
        text-align: center;
        line-height: 37px;
        letter-spacing: 1px;
    }
    .index .greeting02 .inner .textBox .ttl {
        margin-bottom: 14px;
        letter-spacing: 1px;
    }
    .index .greeting02 .greetUl {
        margin: 0 -10px 70px;
        display: block;
    }
    .index .greeting02 .greetUl li {
        width: auto;
        margin: 0 0 30px !important;
    }
    .index .greeting02 .greetUl li a {
        padding: 23px 10px 60px;
    }
    .index .greeting02 .greetUl li .img img {
        width: auto;
        height: 98px;
    }
    .index .greeting02 .greetUl li .img {
        margin-bottom: 26px;
    }
    .index .greeting02 .greetUl li .ttl {
        margin-bottom: 23px;
        font-size: 2.5rem;
        letter-spacing: 4px;
    }
    .index .greeting02 .greetUl li p {
        line-height: 23px;
    }	
    .index .snsList {
        margin: 0 -9px;
        display: block;
    }
    .index .snsList li {
        margin-bottom: 28px;
        width: auto;
    }
    .index .snsList li:last-child {
        margin-bottom: 0;
    }
    .index .snsList li .img {
        margin-bottom: 10px;
    }
    .index {
        margin-bottom: -60px;
    }
    .index .snsList li .facebook {
        height: 520px;
        width: auto;
        overflow: hidden;
    }
    .index .snsList li .twitter {
        height: 520px;
        width: auto;
        overflow: hidden;
    }
}


.member .mainImg h2 {
    letter-spacing: 6px;
}
.member .list {
    padding-top: 7px;
    display: flex;
    flex-wrap: wrap;
}
.member .list li {
    margin: 0 22px 50px 0;
    width: 233px;
}
.member .list li:nth-child(4n) {
    margin-right: 0;
}
.member .list li a {
    display: block;
    padding: 13px 14px;
    border: 1px solid #BEBFBF;
}
.member .list li p {
    font-size: 1.4rem;
}
.member .list li .photo {
    margin-bottom: 16px;
}
.member .list li .ttl {
    margin-bottom: 13px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
}
.member .list li .ttl02 {
    margin-bottom: 17px;
    font-size: 2.4rem;
    font-weight: bold;
}
.member .list li .ttl span {
    display: inline-block;
    min-width: 90px;
    padding: 2px 7px 1px;
    box-sizing: border-box;
    background-color: #FF8CB9;
}

.member .list li .position {
	margin-bottom: 13px;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff;
}

.member .list li .position span {
    display: inline-block;
    padding: 2px 7px 1px;
    box-sizing: border-box;
    background-color: #90C723;
	float: left;
	margin-right: 10px;
	border-radius: 4px;
}


@media all and (min-width: 897px) {
    .member .list li a:hover {
        border-color: #FF8CB9;
    }
}

@media all and (max-width: 896px) {
    .member .list {
        padding-top: 0;
        margin-top: -13px;
    }
    .member .list li {
        margin: 0 0 30px;
        width: 31.3%;
    }
    .member .list li:nth-child(3n-1) {
        margin-left: 3.05%;
        margin-right: 3.05%;
    }
    .member .list li a {
        padding: 6px;
    }
    .member .list li p {
        font-size: 0.8rem;
    }
	.member .list li .comment {
        display:block;
		font-size: 10px;
		transform: scale(0.66);
		transform-origin:0 0;
		white-space: nowrap;
    }
    .member .list li .ttl {
        margin-right: -6px;
        margin-bottom: 6px;
        font-size: 0.8rem;
    }
	.member .list li .position {
        margin-right: -6px;
        margin-bottom: 6px;
        font-size: 0.8rem;
    }
    .member .list li .ttl span {
        min-width: 51px;
        padding: 0 3px;
    }
	.member .list li .position span {
        padding: 0 3px;
		margin: 0 3px 3px 0;
    }
    .member .list li .photo {
        margin-bottom: 9px;
    }
    .member .list li .photo img {
        width: 100%;
    }
    .member .list li .ttl02 {
        margin-bottom: 3px;
        font-size: 1rem;
    }
    .member .list li .ttl03 {
        font-size: 0.7rem;
    }
    .member {
        margin-bottom: -75px;
    }

}


@media all and (max-width: 374px) {
    .headLine01 {
        font-size: 2.5rem;
    }
    .index .message p {
        font-size: 1.2rem;
    }
    .member .list li .ttl {
        margin-right: 0;
    }
}

@media all and (max-height: 450px) {
    .mainImg02 h2 img {
        width: 250px;
    }
}

@media all and (-ms-high-contrast:none){
    .mainImg h2 > span span {
        padding-top: 8px;
    }
    .infoUl li a {
        padding-top: 24px;
    }
    .comLink a {
        padding-top: 18px;
    }
    .member .list li .ttl span {
        padding-top: 4px;
        padding-bottom: 0px;
    }
}