@charset "utf-8";
html {font-size: 62.5%}
body {
background-color: #FFFFFF;
color: #262626;
min-width: 1080px;
font-size: 1.4rem;
font-weight: 300;
letter-spacing: 0.05em;
line-height: 2.2;
font-family: "Lato","Noto Sans JP",sans-serif;
-webkit-text-size-adjust: 100%;
animation: fadeIn 2s ease 0s 1 normal;
-webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
 0% {opacity: 0}
 100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
 0% {opacity: 0}
 100% {opacity: 1}
}
select,input,button,textarea,button {font:99%;}
table {font-size:inherit;font:100%;}
pre,code,kbd,samp,tt {
font-family:monospace;
*font-size:108%;
line-height:100%;
}
a:link {
color: #262626;
transition: .3s;
text-decoration: none;
}
a.color:link {
color: #0092E5!important;
transition: .3s;
text-decoration: underline!important;
}
a:visited {
color: #262626;
text-decoration: none;
}
a:hover {
color: #0092E5;
text-decoration: underline;
}
a:active {
color: #262626;
text-decoration: none;
}
a.btn img {
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
-ms-filter: 'alpha(opacity=100)';
filter: alpha(opacity=100);
-moz-opacity: 1;
opacity: 1;
}
a:hover.btn img {
-ms-filter: 'alpha(opacity=60)';
filter: alpha(opacity=30);
-moz-opacity: 0.40;
opacity: 0.40;
}
a {
outline: none;
}
::selection {
background: #000000;
color: #FFFFFF;
}
::-moz-selection {
background:#000000;
color:#FFFFFF;
}
::-webkit-selection {
background:#000000;
color:#FFFFFF;
}
strong {
font-weight: bold;
}
.pc {
display: inherit!important;
}
.sp {
display: none!important;
}
#wrapper {
overflow: hidden
}
/*--HEADER-------------*/
header {
height: 110px;
width: 100%;
position: fixed;
z-index: 99
}
header .inner {
width: 96%;
padding-top: 30px;
margin-right: auto;
margin-left: auto;
}
header a {
text-decoration: none;
}
header h1 {
float: left;
font-weight: 600
}

/*--NAVIGATION-------------*/
#gnav {
padding-top: 25px;
float: right;
font-weight: 500
}
#gnav ul {
display: block;
text-align: right;
}
#gnav ul li {
display: inline;
margin-left: 1.2em;
}
#gnav ul li a {
  display: inline;
  background-image: linear-gradient(90deg, #AADDF8, #AADDF8); /* マーカーの色を指定 */
  background-repeat: no-repeat;
  background-position: left bottom; /* マーカーの発生位置を左下に設定 */
  background-size: 0 30%; /* マーカーの横幅 / 縦幅 */
  transition: all 0.3s ease; /* マーカーを引く速度 */
  cursor: pointer;
  padding-left: 0.2em;
  padding-right: 0.2em;
}
#gnav ul li a:hover {
background-size: 100% 30%;
text-decoration: none
}

/*--MAINVIS-------------*/
#mv_header{
font-size: 2.2rem;
font-weight: 100;
width: 100%;
height: 35vh;
position: relative
}
#mv_header p{
position: absolute;
left: 2%;
bottom: 20px;
}
#mainVis {
height: 60vh;
margin-bottom: 5vh;
position: relative
}
.swiper-slide{
position: relative;
overflow: hidden;
}
.swiper-slide .shop_logo{
position: absolute;
right: 0;
bottom: 0;
}
.swiper-slide .ph{}
.swiper-slide .ph img{
width: 100%;
height: 60vh;
object-fit: cover;
}
.swiper-pagination {
  bottom: -30px !important;
  z-index: 999!important
}

/*--CONTENTS-------------*/
#contents {
width: 1200px;
margin-right: auto;
margin-left: auto;
}
#contents:after{
content:".";
display:block;
clear:both;
height:0;
visibility:hidden
}

/*--NEWS-------------*/
#anc_news{
padding-top: 150px;
margin-top: -150px;
}
#index_news {
width: 100%;
margin-bottom: 100px;
padding-top: 50px;
}
#index_news h3{
display: block;
float: left;
width: 200px;
font-size: 1.6rem;
font-weight: 500
}
#index_news dl {
width: 980px;
float: right;
height: 150px;
line-height: 1;
overflow-y: scroll
}
#index_news dt {
float: left;
width: 80px;
clear: both;
padding-right: 0;
padding-bottom: 10px;
padding-left: 0px;
padding-top: 0px;
}
#index_news dd {
margin-left: 100px;
margin-bottom: 10px;
padding-right: 5px;
padding-bottom: 10px;
line-height: 1.2;
}

.index_ttl_bar{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 15px;
}

.index_ttl_bar {display:flex; align-items:center;}

.index_ttl_bar:after {margin-left:5px; border-top:1px solid #ccc; content:""; flex-grow:1;}

/*--INDEX_NAV-------------*/
#index_nav {}
#index_nav ul {}
#index_nav ul li {
width: 30%;
margin-right: 5%;
float: left;
margin-bottom: 90px;
font-size: 1.2rem
}
#index_nav ul li:nth-child(3n) {
margin-right: 0%;
}
#index_nav ul li .thum{
margin-bottom: 15px;
}
#index_nav ul li .thum img{
width: 100%;
height: auto
}
#index_nav ul li .ttl{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 5px;
}

/*--FOOTER-------------*/
footer {
background-color: #2F2F2F;
clear: both;
padding-top: 50px;
padding-bottom: 150px;
color: #FFF;
}
footer .inner {
width: 96%;
margin-right: auto;
margin-left: auto;
}
.logo_ft{
float: left
}
#ft_nav {

float: right;
font-weight: 300;
margin-bottom: 2em
}
#ft_nav ul {
display: block;
text-align: right;
}
#ft_nav ul li {
display: inline;
margin-left: 1.2em;
}
#ft_nav ul li a {
  display: inline;
  background-image: linear-gradient(90deg, #668D9E, #668D9E); /* マーカーの色を指定 */
  background-repeat: no-repeat;
  background-position: left bottom; /* マーカーの発生位置を左下に設定 */
  background-size: 0 30%; /* マーカーの横幅 / 縦幅 */
  transition: all 0.3s ease; /* マーカーを引く速度 */
  cursor: pointer;
  padding-left: 0.2em;
  padding-right: 0.2em;
  color: #FFF
}
#ft_nav ul li a:hover {
background-size: 100% 30%;
text-decoration: none
}
.copyright{
width: 100%;
clear: both;
text-align: right;
font-size: 1.2rem
}

/*--SUB_PAGE-------------*/
.sub_page{
margin-top: 270px;
}
h2.sub_ttl{
font-size: 2.0rem;
margin-bottom: 1.5em
}
.ttl_subread{
font-size: 1.6rem;
margin-bottom: 4em
}
.sub_mv{
width: calc(100vw - calc(100vw - 1200px) / 2);
margin-bottom: 90px;
overflow: hidden;
  position: relative;
}
.sub_mv::before {
  animation: img-wrap 2s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  background: #0067A7;
  content: '';
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}
@keyframes img-wrap {
  100% {
    transform: translateX(100%);
  }
}
.sub_mv img{
width: calc(100vw - calc(100vw - 1200px) / 2);
height: auto
}


/*--ABOUT-------------*/
#about{}
#about .cont01{
margin-bottom: 110px;
font-size: 1.6rem
}
#about .cont01 h3{
font-size: 2.0rem;
margin-bottom: 1em
}
#about .cont02{
margin-bottom: 110px;
font-size: 1.6rem;
line-height: 2.6;
}
#about .cont02 h3{
font-size: 1.6rem;
margin-bottom: 1em
}
#about .cont02 h4{
font-size: 1.6rem;
margin-bottom: 0em;
margin-top: 2.5em
}

#about .cont03{
margin-bottom: 110px;
}
#about .cont03 h3{
font-size: 1.6rem;
margin-bottom: 1em
}
#about .cont03 table{
	margin-bottom: 1em;
	border-top: 1px solid #E5E5E5;
	margin-top: 20px;
}
#about .cont03 table th,
#about .cont03 table td{
	border-bottom: 1px solid #E5E5E5;
	font-weight: 300!important;
	padding: 10px 30px;
}

/*--SHOPLIST-------------*/
#shop_list{}
#shop_list ul.shop_list{}
#shop_list ul.shop_list li{
width: 45.5%;
margin-right: 9%;
float: left;
margin-bottom: 90px;
font-size: 1.2rem;
line-height: 1.6
}
#shop_list ul.shop_list li:nth-child(2n){
margin-right: 0%;
}
#shop_list ul.shop_list .thum{
margin-bottom: 20px;
float: left
}
#shop_list ul.shop_list .thum img{
width: 100%;
height: auto
}
#shop_list ul.shop_list .logo{
width: 236px;
float: left
}
#shop_list ul.shop_list .adress{
float: left
}
#shop_list ul.shop_list .adress .name{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 0.3em;
}
#shop_list ul.shop_list .adress .date{}
#shop_list ul.shop_list .adress .date span{
background-color: #262626;
color: #FFF;
font-weight: 600;
line-height: 1;
padding: 2px 6px;
}
#shop_list ul.shop_list li ul{
padding-top: 0.5em
}
#shop_list ul.shop_list li ul li{
width: auto;
margin-right: 1em;
float: left;
margin-bottom: 0px;
font-size: 1.2rem;
color: #838383
}
#shop_list ul.shop_list li ul li:nth-child(2n){
margin-right: 1em;
}
#shop_list ul.shop_list li ul li i{
margin-right: 0.5em;
}

/*--CHARITY-------------*/
#smile{
padding-top: 150px;
margin-top: -150px;
}
.charity_bx{
margin-bottom: 200px;
}
.charity_bx .thum{
width: 550px;
float: left
}
.charity_bx .thum img{
width: 100%;
height: auto
}
.charity_bx .cont{
width: 600px;
float: right
}
.charity_bx .cont .ttl{
font-size: 2.0rem;
font-weight: 600;
margin-bottom: 1em;
line-height: 1.8
}
.charity_bx .cont .report{
margin-top: 4em;
font-size: 1.2rem
}
.charity_bx .cont .report .ttl{
font-size: 1.6rem;
font-weight: 600;
margin-bottom: 1em;
line-height: 1.8
}
.charity_bx .cont .report .recipt{
width: 350px;
margin-top: 2em
}
.charity_bx .cont .report .recipt img{
width: 100%;
height: auto
}
.charity_bx .cont .btn_more{
margin-top: 2em
}
.charity_bx .cont .btn_more a{
text-decoration: underline
}
.drink_archive{
	border: 1px solid #C7C7C7;
	padding: 10px 15px;
	margin-top: 1em;
	margin-bottom: 1em
}
.charity_bx .cont h3.pt{
margin-top: 1.5em
}

#charity_archive{}
#charity_archive ul{}
#charity_archive ul li{
width: 22%;
margin-right: 4%;
float: left;
line-height: 1.6;
min-height: 600px
}
#charity_archive ul li:nth-child(4n){
margin-right: 0%;
}
#charity_archive ul li .thum{
margin-bottom: 15px;
}
#charity_archive ul li .meta{
font-size: 1.4rem
}
#charity_archive ul li .donation{
font-size: 1.1rem;
margin-top: 1em
}


/*--REPORT-------------*/
#report_archive{}
#report_archive ul{}
#report_archive ul li{
width: 50%;
float: left;
line-height: 1.6;
margin-bottom: 60px;
}
#report_archive ul li .thum{
width: 130px;
float: left;
margin-right: 20px;
}
#report_archive ul li .thum img{
width: 100%;
height: auto
}
#report_archive ul li .meta{
float: left;
}
#report_archive ul li .meta .date{
font-size: 1.2rem
}
#report_archive ul li .meta .ttl{
font-size: 1.6rem
}
#report_archive ul li .meta .ttl span{
font-size: 1.2rem
}
#report_archive ul li .meta .name{
font-size: 1.4rem
}
#report_archive ul li .meta .link_pdf{
margin-top: 1em;
font-size: 1.2rem;
font-weight: 500
}
#report_archive ul li .meta .link_pdf a{
text-decoration: underline
}
#report_archive ul li .meta .link_pdf i{
margin-right: 0.5em
}

/*--BLOGLIST-------------*/
#blog_list{}
#blog_list ul.blog_list{}
#blog_list ul.blog_list li{
width: 45.5%;
margin-right: 9%;
float: left;
margin-bottom: 40px;
font-size: 1.2rem;
line-height: 1.6
}
#blog_list ul.blog_list li:nth-child(2n){
margin-right: 0%;
}
#blog_list ul.blog_list .thum{
margin-bottom: 20px;
}
#blog_list ul.blog_list .thum img{
width: 100%;
height: 260px;
object-fit: cover
}
#blog_list ul.blog_list .title{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 0.3em;
}
#blog_list ul.blog_list .date{
font-size: 1.3rem;
}
#blog_list ul.blog_list li a{
text-decoration: none!important
}

/*--BLOG_ENTRY-------------*/
#blog_entry {}
#blog_entry .entry_header{
margin-bottom: 100px;
}
#blog_entry .entry_header .thum{
margin-bottom: 20px;
}
#blog_entry .entry_header img{
width: 100%;
height: 600px;
object-fit: cover
}
#blog_entry .entry_header .title{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 0.3em;
}
#blog_entry .entry_header .date{
font-size: 1.3rem;
}
.entry p img,
.entry img{
width: 70%;
height: auto;
margin-left: auto;
margin-right: auto;
text-align: center;
margin-top: 1em;
margin-bottom: 2em;

}
.entry {
	margin-bottom: 50px;
}
.entry a {
	text-decoration: none;
}
.entry a:hover {
	text-decoration: none;
}
.entry p {
	margin: 0 0 20px 0;
	zoom: 1;
}
.entry p strong {
	font-weight: bold;
}
.entry p img.aligncenter {
	display: block;
	margin: auto;
}
.entry p img.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}
.entry p img.alignright {
	float: right;
	margin: 0 0 10px 10px;
}
.entry h1 {
	font-size: 1.3em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h2 {
	font-size: 1.2em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h3 {
	font-size: 1.1em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h4 {
	font-size: 1em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h5 {
	font-size: 0.8em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h6 {
	font-size: 0.7em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry ul li {
	list-style: disc;
	margin: 5px 0 5px 20px;
}
.entry ol li {
	list-style: decimal;
	margin: 5px 0 5px 20px;
}
/* clearfix */
.entry p:before, .entry p:after {
	content: "";
	display: table;
}
.entry p:after {
	clear: both;
}
.entry .date{
font-weight: bold;
}
.entry .cat-data {
	font-size: .6em;
	padding: 3px 5px;
	text-align: center;
	white-space: nowrap;
	color: #fff;
	border-radius: 3px;
	background-color: #464646;
}
.entry .tag li {
	font-size: .6em;
	padding: 3px 5px;
	text-align: center;
	color: #fff;
	border-radius: 3px;
	background-color: #464646;
	display: inline-block;
	float: left;
}
.entry .tag li:first-child {
	color: #464646;
	background-color: #FFF;
}
/*--PAGENATION-------------*/
.pagination {
	margin: 40px 0 30px;
	text-align: center;
}
.pagination ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.pagination li {
	display: inline-block;
	width: auto;
}
.pagination li a, .pagination li > span {
	font-size: .9em;
	display: block;
	width: 30px;
	margin: 0 1px;
	padding: 5px 0;
	text-decoration: none;
	color: #000;
	border: solid 1px #ccc;
	border-radius: 3px;
}
.pagination li > span {
	color: #fff;
	background-color: #464646;
}
.pagination li a:hover {
	color: #fff;
	background-color: #464646;
}
.pagination li .dots {
	width: 15px;
	padding: 0;
	color: #000;
	border-color: transparent;
	background-color: transparent;
}

.btn_back{
	border-top: 1px solid #808080;
	text-align: right;
	margin-bottom: 100px;
}

/*--MAILFORM-------------*/
#mailformpro table{
width: 100%;
background-color: #FFF;
}
#mailformpro table th,#mailformpro table td{
	border-bottom: 1px solid #000000;
	padding: 20px;
}
#mailformpro table th{
white-space: nowrap;
vertical-align: top;
background-color: #FFF!important
}
#mailformpro table .form_field{
width: calc(100% - 10px)!important;
padding: 5px!important;

border: solid 1px #C4C4C4!important;
border-radius: 0px!important;
box-shadow: 0px 0px 0px #CCC inset!important;

}
form#mailformpro label.mfp_checked {
  padding: 3px;
  border: solid 1px #CCC;
  background-color: #eaeaea!important;
  box-shadow: 0px 0px 0px #fff inset!important;
}
#mailformpro table .req{
color: #FF0004
}
#mailformpro .submit_btn {
	padding: 10px 30px;
	font-size: 1.4rem;
	width: 100%;
	border: none;
	color: #FFF!important;
	background-color: #333!important;
	cursor: pointer;
	outline: none;
	background-image: none!important;
	text-shadow: none!important;
	border-radius: 0;
}
.mfp_element_reset {
	color: #333;
}
#mailformpro .submit_btn:hover {
	background-color: #006CBD!important;
}

div#mfp_overlay_inner h4{
	text-align: center!important;
	font-weight: 500;
	margin-bottom: 0.7em
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
  font-size: 1.4rem!important;
}
div.mfp_buttons {
  clear: both;
  padding: 10px 0px;
  text-align: center;
  margin-top: 1em
}
.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
	border-radius: 0px!important;
	padding: 10px 30px;
	border: solid 0px rgba(204,204,204,0.00)!important;
	background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -webkit-gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -moz-linear-gradient(top, #EEE, #CCC);
	background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
	text-shadow: none!important;
	background-image: none!important;
	background-color: #000!important;
	color: #FFF!important;
	font-size: 1.4rem!important;
	cursor: pointer;
	outline: none;
	border-style: none;
}
div.mfp_err {

	background-image: none!important;

}
.mfp_thanks{
padding-top: 100px;
padding-bottom: 200px;
}





























































@media screen and (max-width: 520px) {
html {font-size: 62.5%}
body {
background-color: #FFFFFF;
color: #262626;
min-width: 320px;
font-size: 1.4rem;
font-weight: 300;
letter-spacing: 0.05em;
line-height: 2.2;
font-family: "Lato","Noto Sans JP",sans-serif;
-webkit-text-size-adjust: 100%;
animation: fadeIn 2s ease 0s 1 normal;
-webkit-animation: fadeIn 2s ease 0s 1 normal;
}

select,input,button,textarea,button {font:99%;}
table {font-size:inherit;font:100%;}
pre,code,kbd,samp,tt {
font-family:monospace;
*font-size:108%;
line-height:100%;
}
a:link {
color: #262626;
transition: .3s;
text-decoration: none;
}
a.color:link {
color: #0092E5!important;
transition: .3s;
text-decoration: underline!important;
}
a:visited {
color: #262626;
text-decoration: none;
}
a:hover {
color: #0092E5;
text-decoration: underline;
}
a:active {
color: #262626;
text-decoration: none;
}
a.btn img {
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
-ms-filter: 'alpha(opacity=100)';
filter: alpha(opacity=100);
-moz-opacity: 1;
opacity: 1;
}
a:hover.btn img {
-ms-filter: 'alpha(opacity=60)';
filter: alpha(opacity=30);
-moz-opacity: 0.40;
opacity: 0.40;
}
a {
outline: none;
}
::selection {
background: #000000;
color: #FFFFFF;
}
::-moz-selection {
background:#000000;
color:#FFFFFF;
}
::-webkit-selection {
background:#000000;
color:#FFFFFF;
}
strong {
font-weight: bold;
}
.pc {
display: none!important;
}
.sp {
display: inherit!important;
}
#wrapper {
overflow: hidden
}
/*--HEADER-------------*/
header {
height: 70px;
width: 100%;
position: fixed;
z-index: 9999
}
header .inner {
width: 90%;
padding-top: 20px;
margin-right: auto;
margin-left: auto;
}
header a {
text-decoration: none;
}
header h1 {
float: left;
font-weight: 600
}
header h1 img{
width: 160px;
height: auto
}
/*--NAVIGATION-------------*/
#gnav {
	padding-top: 25px;
	float: none;
	font-weight: 500;
	display: none;
	position: fixed;
	width: calc(100% - 80px);
	height: calc(100vh - 80px);
	background-color: rgba(3,93,132,0.90);
	left: 0;
	top: 0;
	border: 10px solid rgba(255,255,255,1.00);
	padding: 30px;
	font-size: 1.6rem
}
#gnav ul {
display: block;
text-align: right;
padding-top: 50px;
}
#gnav ul li {
display: block;
margin-left: 1.2em;
margin-bottom: 1em
}
#gnav ul li a {
  display: inline;
  background-image: linear-gradient(90deg, #AADDF8, #AADDF8); /* マーカーの色を指定 */
  background-repeat: no-repeat;
  background-position: left bottom; /* マーカーの発生位置を左下に設定 */
  background-size: 0 30%; /* マーカーの横幅 / 縦幅 */
  transition: all 0.3s ease; /* マーカーを引く速度 */
  cursor: pointer;
  padding-left: 0.2em;
  padding-right: 0.2em;color: #FFF
}
#gnav ul li a:hover {
background-size: 100% 30%;
text-decoration: none
}

/*--MAINVIS-------------*/
#mv_header{
font-size: 1.8rem;
font-weight: 100;
width: 96%;
height: 35vh;
position: relative;
margin-left: auto;
margin-right: auto
}
#mv_header p{
position: absolute;
left: 2%;
bottom: 20px;
}
#mainVis {
height: 60vh;
margin-bottom: 5vh;
position: relative
}
.swiper-slide{
position: relative;
overflow: hidden;
}
.swiper-slide .shop_logo{
position: absolute;
right: 0;
bottom: 0;
}
.swiper-slide .shop_logo img{
width: 130px;
height: auto
}
.swiper-slide .ph{}
.swiper-slide .ph img{
width: 100%;
height: 60vh;
object-fit: cover;
}
.swiper-pagination {
  bottom: -30px !important;
  z-index: 99!important
}

/*--CONTENTS-------------*/
#contents {
width: 90%;
margin-right: auto;
margin-left: auto;
}
#contents:after{
content:".";
display:block;
clear:both;
height:0;
visibility:hidden
}

/*--NEWS-------------*/
#anc_news{
padding-top: 70px;
margin-top: -70px;
}
#index_news {
width: 100%;
margin-bottom: 50px;
padding-top: 30px;
}
#index_news h3{
display: block;
float: none;
width: 100%;
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 20px;
}
#index_news dl {
width: 100%;
float: none;
height: 250px;
line-height: 1;
overflow-y: scroll;
font-size: 1.2rem;
}
#index_news dt {
float: none;
width: 100%;
clear: both;
padding-right: 0;
padding-bottom: 10px;
padding-left: 0px;
padding-top: 0px;
}
#index_news dd {
margin-left: 0px;
margin-bottom: 10px;
padding-right: 5px;
padding-bottom: 10px;
line-height: 1.8
}

/*--INDEX_NAV-------------*/
#index_nav {}
#index_nav ul {
width: 90%;
margin-left: auto;
margin-right: auto;
}
#index_nav ul li {
width: 100%;
margin-right: 0%;
float: none;
margin-bottom: 30px;
font-size: 1.2rem
}
#index_nav ul li:nth-child(3n) {
margin-right: 0%;
}
#index_nav ul li .thum{
margin-bottom: 15px;
}
#index_nav ul li .thum img{
width: 100%;
height: auto
}
#index_nav ul li .ttl{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 0px;
}

/*--FOOTER-------------*/
footer {
background-color: #2F2F2F;
clear: both;
padding-top: 50px;
padding-bottom: 150px;
color: #FFF;
}
footer .inner {
width: 90%;
margin-right: auto;
margin-left: auto;
}
.logo_ft{
float: none;
text-align: center;
margin-bottom: 50px;
}
#ft_nav {
float: none;
font-weight: 300;
margin-bottom: 2em
}
#ft_nav ul {
display: block;
text-align: center;
}
#ft_nav ul li {
display: inline;
margin-left: 0.5em;
margin-right: 0.5em
}
#ft_nav ul li a {
  display: inline;
  background-image: linear-gradient(90deg, #668D9E, #668D9E); /* マーカーの色を指定 */
  background-repeat: no-repeat;
  background-position: left bottom; /* マーカーの発生位置を左下に設定 */
  background-size: 0 30%; /* マーカーの横幅 / 縦幅 */
  transition: all 0.3s ease; /* マーカーを引く速度 */
  cursor: pointer;
  padding-left: 0.2em;
  padding-right: 0.2em;
  color: #FFF
}
#ft_nav ul li a:hover {
background-size: 100% 30%;
text-decoration: none
}
.copyright{
width: 100%;
clear: both;
text-align: center;
font-size: 1.2rem
}

/*--SUB_PAGE-------------*/
.sub_page{
margin-top: 120px;
}
h2.sub_ttl{
font-size: 1.8rem;
margin-bottom: 1.5em
}
.ttl_subread{
font-size: 1.4rem;
margin-bottom: 4em
}
.sub_mv{
width: 100vw;
margin-bottom: 100px;
overflow: hidden;
  position: relative;
}
.sub_mv::before {
  animation: img-wrap 2s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  background: #0067A7;
  content: '';
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}

.sub_mv img{
width: 100%;
height: auto;
}


/*--ABOUT-------------*/
#about{}
#about .cont01{
margin-bottom: 110px;
font-size: 1.4rem
}
#about .cont01 h3{
font-size: 1.8rem;
margin-bottom: 1em
}
#about .cont02{
margin-bottom: 60px;
font-size: 1.4rem;
line-height: 2.6;
}
#about .cont02 h3{
font-size: 1.4rem;
margin-bottom: 1em
}
#about .cont02 h4{
font-size: 1.4rem;
margin-bottom: 0em;
margin-top: 2.5em
}
#about .cont03{
margin-bottom: 50px;
}
#about .cont03 h3{
font-size: 1.4rem;
margin-bottom: 1em
}
#about .cont03 table{
	margin-bottom: 1em;
	border-top: 1px solid #E5E5E5;
	margin-top: 20px;
	width: 100%
}
#about .cont03 table th,
#about .cont03 table td{
	border-bottom: 1px solid #E5E5E5;
	font-weight: 300!important;
	padding: 5px 15px;
	display: block
}
#about .cont03 table th{
background-color: rgba(246,246,246,1.00)
}

/*--SHOPLIST-------------*/
#shop_list{
width: 80%;
margin-left: auto;
margin-right: auto
}
#shop_list ul.shop_list{}
#shop_list ul.shop_list li{
width: 100%;
margin-right: 0%;
float: none;
margin-bottom: 80px;
font-size: 1.2rem;
line-height: 1.6;
text-align: center
}
#shop_list ul.shop_list li:nth-child(2n){
margin-right: 0%;
}
#shop_list ul.shop_list .thum{
margin-bottom: 20px;
float: none
}
#shop_list ul.shop_list .thum img{
width: 100%;
height: auto
}
#shop_list ul.shop_list .logo{
width: 100%;
float: none;
}
#shop_list ul.shop_list .adress{
float: none
}
#shop_list ul.shop_list .adress .name{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 1.3em;
}
#shop_list ul.shop_list li ul{
padding-top: 0.5em;
text-align: center
}
#shop_list ul.shop_list li ul li{
width: auto;
margin-right: 0.6em;
float: none;
margin-bottom: 0px;
font-size: 1.2rem;
color: #838383;
display: inline;
margin-left: 0.6em
}
#shop_list ul.shop_list li ul li:nth-child(2n){
margin-right: 1em;
}
#shop_list ul.shop_list li ul li i{
margin-right: 0.5em;
}

/*--CHARITY-------------*/
#smile{
padding-top: 70px;
margin-top: -70px;
}
.charity_bx{
margin-bottom: 100px;
}
.charity_bx .thum{
width: 100%;
float: none;
margin-bottom: 50px;
}
.charity_bx .thum img{
width: 100%;
height: auto
}
.charity_bx .cont{
width: 100%;
float: none
}
.charity_bx .cont .ttl{
font-size: 1.8rem;
font-weight: 600;
margin-bottom: 1em;
line-height: 1.8
}
.charity_bx .cont .report{
margin-top: 4em;
font-size: 1.2rem
}
.charity_bx .cont .report .ttl{
font-size: 1.6rem;
font-weight: 600;
margin-bottom: 1em;
line-height: 1.8
}
.charity_bx .cont .report .recipt{
width: 350px;
margin-top: 2em
}
.charity_bx .cont .report .recipt img{
width: 100%;
height: auto
}
.charity_bx .cont .btn_more{
margin-top: 2em;
text-align: center;
font-size: 1.2rem;
}
.charity_bx .cont .btn_more a{
text-decoration: underline
}
.drink_archive{
	border: 1px solid #C7C7C7;
	padding: 10px 15px;
	margin-top: 1em;
	margin-bottom: 1em
}
.charity_bx .cont h3.pt{
margin-top: 1.5em
}

#charity_archive{}
#charity_archive ul{}
#charity_archive ul li{
width: 48%;
margin-right: 4%;
float: left;
line-height: 1.6;
min-height: auto;
margin-bottom: 40px;
font-size: 1.2rem
}
#charity_archive ul li:nth-child(4n){
margin-right: 4%;
}
#charity_archive ul li:nth-child(2n){
margin-right: 0%;
}
#charity_archive ul li .thum{
margin-bottom: 15px;
}
#charity_archive ul li .thum img{
width: 100%;
height: auto
}
#charity_archive ul li .meta{
font-size: 1.1rem
}
#charity_archive ul li .donation{
font-size: 0.8rem;
margin-top: 1em
}


/*--REPORT-------------*/
#report_archive{}
#report_archive ul{}
#report_archive ul li{
width: 100%;
float: none;
line-height: 1.6;
margin-bottom: 60px;
}
#report_archive ul li .thum{
width: 130px;
float: left;
margin-right: 20px;
}
#report_archive ul li .thum img{
width: 100%;
height: auto
}
#report_archive ul li .meta{
float: left;
width: calc(90% - 130px)
}
#report_archive ul li .meta .date{
font-size: 1.2rem
}
#report_archive ul li .meta .ttl{
font-size: 1.6rem
}
#report_archive ul li .meta .ttl span{
font-size: 1.2rem;
display: block
}
#report_archive ul li .meta .name{
font-size: 1.4rem
}
#report_archive ul li .meta .link_pdf{
margin-top: 1em;
font-size: 1.2rem;
font-weight: 500
}
#report_archive ul li .meta .link_pdf a{
text-decoration: underline
}
#report_archive ul li .meta .link_pdf i{
margin-right: 0.5em
}

/*--BLOGLIST-------------*/
#blog_list{}
#blog_list ul.blog_list{
width: 100%;
margin-left: auto;
margin-right: auto
}
#blog_list ul.blog_list li{
width: 100%;
margin-right: 0%;
float: none;
margin-bottom: 50px;
font-size: 1.2rem;
line-height: 1.6
}
#blog_list ul.blog_list li:nth-child(2n){
margin-right: 0%;
}
#blog_list ul.blog_list .thum{
margin-bottom: 20px;
}
#blog_list ul.blog_list .thum img{
width: 100%;
height: 40vw;
object-fit: cover
}
#blog_list ul.blog_list .title{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 0.3em;
}
#blog_list ul.blog_list .date{
font-size: 1.3rem;
}
#blog_list ul.blog_list li a{
text-decoration: none!important
}

/*--BLOG_ENTRY-------------*/
#blog_entry {}
#blog_entry .entry_header{
margin-bottom: 50px;
}
#blog_entry .entry_header .thum{
margin-bottom: 20px;
}
#blog_entry .entry_header img{
width: 100%;
height: 50vw;
object-fit: cover
}
#blog_entry .entry_header .title{
font-size: 1.6rem;
font-weight: 500;
margin-bottom: 0.3em;
}
#blog_entry .entry_header .date{
font-size: 1.3rem;
}
.entry p img,
.entry img{
width: 70%;
height: auto;
margin-left: auto;
margin-right: auto;
text-align: center;
margin-top: 1em;
margin-bottom: 2em;

}
.entry {
	margin-bottom: 50px;
}
.entry a {
	text-decoration: none;
}
.entry a:hover {
	text-decoration: none;
}
.entry p {
	margin: 0 0 20px 0;
	zoom: 1;
}
.entry p strong {
	font-weight: bold;
}
.entry p img.aligncenter {
	display: block;
	margin: auto;
}
.entry p img.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}
.entry p img.alignright {
	float: right;
	margin: 0 0 10px 10px;
}
.entry h1 {
	font-size: 1.3em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h2 {
	font-size: 1.2em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h3 {
	font-size: 1.1em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h4 {
	font-size: 1em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h5 {
	font-size: 0.8em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry h6 {
	font-size: 0.7em;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.entry ul li {
	list-style: disc;
	margin: 5px 0 5px 20px;
}
.entry ol li {
	list-style: decimal;
	margin: 5px 0 5px 20px;
}
/* clearfix */
.entry p:before, .entry p:after {
	content: "";
	display: table;
}
.entry p:after {
	clear: both;
}
.entry .date{
font-weight: bold;
}
.entry .cat-data {
	font-size: .6em;
	padding: 3px 5px;
	text-align: center;
	white-space: nowrap;
	color: #fff;
	border-radius: 3px;
	background-color: #464646;
}
.entry .tag li {
	font-size: .6em;
	padding: 3px 5px;
	text-align: center;
	color: #fff;
	border-radius: 3px;
	background-color: #464646;
	display: inline-block;
	float: left;
}
.entry .tag li:first-child {
	color: #464646;
	background-color: #FFF;
}
/*--PAGENATION-------------*/
.pagination {
	margin: 40px 0 30px;
	text-align: center;
}
.pagination ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.pagination li {
	display: inline-block;
	width: auto;
}
.pagination li a, .pagination li > span {
	font-size: .9em;
	display: block;
	width: 30px;
	margin: 0 1px;
	padding: 5px 0;
	text-decoration: none;
	color: #000;
	border: solid 1px #ccc;
	border-radius: 3px;
}
.pagination li > span {
	color: #fff;
	background-color: #464646;
}
.pagination li a:hover {
	color: #fff;
	background-color: #464646;
}
.pagination li .dots {
	width: 15px;
	padding: 0;
	color: #000;
	border-color: transparent;
	background-color: transparent;
}

.btn_back{
	border-top: 1px solid #808080;
	text-align: right;
	margin-bottom: 100px;
}

/*--MAILFORM-------------*/
#mailformpro table{
width: 100%;
background-color: #FFF;
}
#mailformpro table th,#mailformpro table td{
	border-bottom: 1px solid #000000;
	padding: 20px;
}
#mailformpro table th{
white-space: nowrap;
vertical-align: top;
}
#mailformpro table .form_field{
width: calc(100% - 10px)!important;
padding: 5px!important;

border: solid 1px #C4C4C4!important;
border-radius: 0px!important;
box-shadow: 0px 0px 0px #CCC inset!important;

}
form#mailformpro label.mfp_checked {
  padding: 3px;
  border: solid 1px #CCC;
  background-color: #eaeaea!important;
  box-shadow: 0px 0px 0px #fff inset!important;
}
#mailformpro table .req{
color: #FF0004
}
#mailformpro .submit_btn {
	padding: 10px 30px;
	font-size: 1.4rem;
	border: none;
	color: #FFF!important;
	background-color: #000!important;
	cursor: pointer;
	outline: none;
	background-image: none!important;
	text-shadow: none!important;
	border-radius: 0;
}
.mfp_element_reset {
	color: #333;
}
#mailformpro .submit_btn:hover {
	background-color: #878787;
}

div#mfp_overlay_inner h4{
	text-align: center!important;
	font-weight: 500;
	margin-bottom: 0.7em
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
  font-size: 1.4rem!important;
}
div.mfp_buttons {
  clear: both;
  padding: 10px 0px;
  text-align: center;
  margin-top: 1em
}
.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
	border-radius: 0px!important;
	padding: 10px 30px;
	border: solid 0px rgba(204,204,204,0.00)!important;
	background: gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -webkit-gradient(linear, center top, center bottom, from(#EEE), to(#CCC));
	background: -moz-linear-gradient(top, #EEE, #CCC);
	background: -ms-linear-gradient(top, #EEE 0%, #CCC 100%);
	text-shadow: none!important;
	background-image: none!important;
	background-color: #000!important;
	color: #FFF!important;
	font-size: 1.4rem!important;
	cursor: pointer;
	outline: none;
	border-style: none;
}
div.mfp_err {

	background-image: none!important;

}
.mfp_thanks{
padding-top: 100px;
padding-bottom: 200px;
}


input{ font-size:16px!important; } /*フォームのフォーカスOFF*/
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
  font-size:16px;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
/*SP NAV*/
#panel-btn{
  display: inline-block;
  position: fixed;
  width: 40px;
  height: 40px;
  margin: 5px 0 10px;
  border-radius: 50%;
  right: 20px;
  top: 10px;
  z-index: 9999999;
animation-duration: 2s;
}
#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: #000;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 2px;
  background: #000;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -6px;
}
#panel-btn-icon:after{
  margin-top: 4px;
}
#panel-btn .close{
  background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after{
  margin-top: 0;
  background: #FFF;
}
#panel-btn .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#panel-btn .close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
}
