/*　Theme Name: harekare　*/

/*　Root
=================================================== 
:root{
	--color-main: #EE921B;
	--color-accent1: #41BAC6;
	--color-accent2: #82B945;
	--color-bg0: #C1EAEF;
	--color-bg1: #FCF9EA;
	--color-bg2: #F6F5EE;
	--color-bg3: #F5F0E1;
	--color-text: #61584F;
	--color-white: #FFFDF8;
}　*/
:root{
	--color-main: #EE921B;
	--color-accent1: #41BAC6;
	--color-accent2: #82B945;
	--color-bg0: #FDEBEB;
	--color-bg1: #FCF9EA;
	--color-bg2: #F6F5EE;
	--color-bg3: #F5F0E1;
	--color-text: #61584F;
	--color-white: #FFFDF8;
}

/* Common
=================================================== */
html {
  overflow-y: scroll;
  font-size: 62.5%;
  width: 100%;
}
body {
	background: var(--color-white);
	background-color: var(--color-white);
	background-repeat: no-repeat;
	background-position: center top;
	letter-spacing: 0.08em;
	width: 100%;
	font-family: "Noto Sans JP", sans-serif;
	color: var(--color-text);
	font-size: 1.6em;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,p,blockquote,table,th,td {
  line-height: 1.8;
  box-sizing: border-box;
  margin-top: 0;
}
a,img,fill,stroke,button {
  display: inline-block;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

a:link {
  color: var(--color-text);
}

a:visited {
  color: var(--color-text);
}
p a {
    text-decoration: underline;
}
/*
a:hover {
  color: #3452a2;
  text-decoration: none;
}
a:active {
  color: #3452a2;
  text-decoration: none;
}
a:focus {
  outline: none;
}
*/
img {
  vertical-align: top;
  width: auto;
  max-width: 100%;
  height: auto;
}
hr {
    width: 1000px;
    max-width: 86%;
    background: none;
    opacity: 0.1;
    border-style: dotted;
    border-top: 3px dotted #61584F;
	margin:0 auto 100px;
}
ul {
  list-style-type: none;
  padding-left: 0;
}
dd {
  margin: 0;
}
aside {
}
hgroup {
}
figure img {
  margin-bottom: 20px;
}
figcaption {
  font-size: 1.4rem;
}
.cf:before,
.cf:after {
  content: "";
  display: table;
}
.cf:after {
  clear: both;
}
h4 {
    font-weight: 600;
}
.mb00 {
  margin-bottom: 0 !important;
}
.mb05 {
  margin-bottom: 5px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb30 {
  margin-bottom: 30px !important;
}
.mb40 {
  margin-bottom: 40px !important;
}
.mb50 {
  margin-bottom: 50px !important;
}
.mb60 {
  margin-bottom: 60px !important;
}
.mb70 {
  margin-bottom: 70px !important;
}
.mb80 {
  margin-bottom: 80px !important;
}
.mb90 {
  margin-bottom: 90px !important;
}
.mb100 {
  margin-bottom: 100px !important;
}
.mb150 {
  margin-bottom: 150px !important;
}
.center {
  text-align: center;
}

.sp {
  display: none !important;
}
@media screen and (max-width: 560px) {
  .sp {
    display: block !important;
  }
  .pc {
    display: none !important;
  }
}
/* layout
============================== */
#container {
  position: relative;
  width: 100%;
  background-color: var(--color-bg0);
}
.contents {
  width: 100%;
  margin: 110px auto 0;
  padding-bottom: 1px;
}
.img100 img {
    width: 100%;
}

/* Header
=================================================== */
header {
	width: 100%;
	padding-bottom: 1px;
	position: fixed;
	top: 0;
	z-index: 5;
	position: relative;
  /*box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.1);*/
}
.home header,
.container_lp header {
  background-color: #f0fbfc;
  position: relative;
  top: auto;
  box-shadow: none;
}
@media screen and (max-width: 1040px) {
  header {
    position: relative;
  }
}
.header {
  width: 280px;
  max-width: 70%;
  z-index: 51;
  position: fixed;
  top:30px;
  left:50px;
}
.home .header {
  top:40px;
}

.header .logo {
  margin: 0;
  width: 300px;
}
#gnav {
	justify-content: right;
	display: flex;
	margin-right: 0px;
	position: fixed;
    right: 10px;
	top: 30px;
} 
.home #gnav {
	top: 50px;
} 
#gnav-list {
	position: relative;
	display: flex;
	width: 700px;
}
#gnav ul {
	display: flex;
	background: #fff;
	justify-content: center;
	border-radius: 2rem;
	height: 40px;
    padding: 6px 20px;
	box-shadow: 0px 0px 20px 5px rgb(106 100 93 / 0.1);
}
#gnav ul a{
	color: #61584F;
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
}
#gnav ul.submenu{
	display: none;
}
#gnav li{
	margin: 0 10px 0px;
}
#gnav li.openmenu{
	position:relative;
	padding-bottom:10px;
	padding-right: 10px;
}
li.openmenu img {
    position: absolute;
    top: 12px;
    width: 10px;
}
#gnav li.openmenu ul{
	padding:8px 0px;
}
#gnav li.openmenu:hover ul.submenu{
	display:block;
}
#gnav li.openmenu ul.submenu{
	position:absolute;
	width:180px;
	height:auto;
	top:30px;
	left:-45px;
	background: rgb(255, 255, 255, 0.7);
    backdrop-filter: blur(3px);
}
#gnav li.openmenu ul.submenu li {
    padding: 3px 6px;
	line-height: 1.6;
	border-bottom: 2px solid rgb(202, 222, 232, 0.5);
}
#gnav li.openmenu ul.submenu li:last-child {
    border-bottom: none;
}
#gnav li.openmenu ul.submenu li a {
    font-size:14px;
}
#gnav li.openmenu ul.submenu li a span {
    font-size:12px;
	display:block;
	letter-spacing: .09em;
}
#gnav ul li:last-child a{
	letter-spacing: .09em;
}
#gnav ul li:last-child a span {
    letter-spacing: -0.05em;
}

#gnav .mail{
	background: #fff;
	border-radius: 2rem;
	margin-left: 10px;
	padding-top:2px;
	height: 40px;
	box-shadow: 0px 0px 20px 5px rgb(106 100 93 / 0.1);
}
.mail a {
    padding: 9px;
}
@media screen and (max-width: 560px) {
.header {
    top: 22px;
    left: 22px;
	position: absolute;
}
.header .logo {
    width: 250px;
}
.openbtn2 {
    position: fixed;
    width: 54px;
    height: 54px;
    cursor: pointer;
    background: #EE921B;
    top: 11px;
    right: 10px;
    z-index: 500;
    border-radius: 3rem;
	font-size: 10px;
    color: #fff;
    padding: 25px 10px 0px;
	font-family: Quicksand;
	font-weight:bold;
	box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.openbtn2 span:nth-of-type(1) {
    top: 17px;
    width: 40%;
}
.openbtn2 span:nth-of-type(2) {
    top: 25px;
    width: 30%;
}
.openbtn2 span:nth-of-type(3) {
    top: 33px;
    width: 40%;
}
.openbtn2 span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 16px;
    height: 2px;
    background-color: #fff;
	border-radius:1rem;
}
.openbtn2.active span:nth-of-type(1) {
    top: 18px;
    left: 14px;
    transform: translateY(8px) rotate(-45deg);
    width: 50%;
}
.openbtn2.active span:nth-of-type(2) {
    width: 0%;
}
.openbtn2.active span:nth-of-type(3) {
    top: 33px;
    left: 14px;
    transform: translateY(-7px) rotate(45deg);
    width: 50%;
}
#gnav {
    position: fixed;
    z-index: 300;
    top: 0;
    right: -120%;
    width: 100%;
    height: 100vh;
    transition: all 0.6s;
}

.home #gnav {
    top: 0;
}
#gnav #gnav-list {
	position: fixed;
    z-index: 300;
    width: 100%;
    height: 100vh;
    overflow: auto;
    background: #fff;
	border-radius: 3rem;
	box-shadow:0px 0px 20px 10px rgb(106 100 93 / 0.2);
}
#gnav.panelactive {
    right: -8%;
	top:0;
	border-radius: 2rem;
    /*margin-top: -50px;*/
}
#gnav ul {
    position: relative;
	width:80%;
    z-index: 300;
    display: block;
    margin: 0 auto;
    margin-top: 90px;
	background: none;
    box-shadow: none;
}
#gnav ul li{
    margin-bottom:14px;
	margin-left:0;
	font-size:16px;
	font-weight: 400;
}
#gnav ul a{
	font-size:18px;
	color: var(--color-text);
	border-bottom: 2px solid var(--color-bg3);
	margin-bottom:6px;
}
#gnav li.sp.newsb a {
    background: var(--color-text);
	color:#fff;
    display: inline-block;
    width: 41%;
    padding: 6px;
    border: none;
    text-align: center;
    border-radius: 2rem;
    font-size: 18px;
	margin-right:6px;
}
#gnav li.sp.newsb a.green {
    background: var(--color-accent2);
}
#gnav li.sp.newsb a.orange {
    background: var(--color-main);
}
#gnav li.sp.newsb a.mailb {
    width: 88%;
}
#gnav li.openmenu {
    padding-bottom: 0px;
}
#gnav li.openmenu ul.submenu{
	display:block;
}
#gnav li.openmenu ul.submenu{
	position: relative;
    width: 100%;
    height: auto;
    top: 0px;
    left: 0;
    margin-top: 8px;
    margin-bottom: 28px;
    background: none; 
    backdrop-filter: none;
	padding:0;
	padding-left:10px;
}
#gnav li.openmenu ul.submenu li,#gnav li.openmenu ul.submenu li:last-child {
    border-bottom: 2px solid var(--color-bg3);
}
#gnav li.openmenu ul.submenu li a {
    font-size: 18px;
}
#gnav li.openmenu ul.submenu li a span {
    font-size: 15px;
}
#gnav ul li.openmenu a {
    border-bottom: none;
}
li.openmenu img {
    width: 13px;
    top: 14px;
}
	
#gnav-list .bnr {
    margin-top: 50px;
}
#gnav-list a {
    color: #fff;
	text-decoration: none;
}
}
.zine {
    position: fixed;
    right: -12px;
    top: 30%;
    font-size: 14px;
	width:50px;
}
.zine a {
    padding: 10px 14px 10px;
    border-radius: 1.5rem;
	margin-bottom:10px;
	background: #ED8C1C;
	color: #fff;
	display:block;
	line-height:1.2;
	box-shadow:0px 0px 8px 0px rgba(0, 0, 0, 0.1);
}
.home .zine {
    position: fixed;
    right: 50px;
    top: -13px;
    font-size: 14px;
	width:auto;
}
.home .zine a {
    padding: 16px 14px 4px;
    border-radius: 1.5rem;
    margin-right: 10px;
	margin-bottom:0;
	background: #ED8C1C;
	color: #fff;
	display:inline-block;
	line-height:1.5;
}
.zine a:first-child{
	background: #82B945;
}
.zine a:last-child{
	background: #61584F;
}

.kv-img {
    margin-bottom: 50px;
}
.kv-copy {
    position: relative;
}
.kv-copy img {
    position: absolute;
    left: 5vw;
    bottom: 80px;
}

.headline {
    display: block;
    font-size: 24px;
	font-weight: 600;
    letter-spacing: 2px;
    margin-bottom: 40px;
}
.headline span {
    display: block;
    font-size: 14px;
	margin-bottom:10px;
}
.headline.center span {
	margin-left:-14px;
}
.headline span:before{
	content: '';
    background: url(../img/mark-grn.svg) no-repeat;
    margin-right: 7px;
    transform: translateY(1px);
    width: 14px;
    height: 14px;
    display: inline-block;
}
.en{
	font-family:"Figtree", sans-serif;
	text-transform: uppercase;
	font-weight: 600;
    letter-spacing: 1.5px;
}
p.heading {
    font-weight: 600;
    font-size: 18px;
}
p.button a {
    width: 200px;
	max-width:100%;
    margin: 0 auto;
    background: #61584F;
    border-radius: 1.8rem;
    padding: 11px;
    color: #fff;
	position:relative;
	text-decoration:none;
}
p.button a:hover {
    background: #7B6F61;
    transition: 0.4s;
}
p.button a img.icon {
    width: 6px;
    position: absolute;
    top: 20px;
    right: 16px;
}
p.button a img.icon.down {
    width: 10px;
    top: 24px;
	right:18px;
}
p.button a.comsoon {
    background: #D7E0E0;
    pointer-events: none;
}
#contact p.button a img.icon{
	top:38px;
}


/* Home
=============================================== */
.wrap{
	width: 92%;
	max-width: 720px;
	margin: 0 auto;
}
.wrap_s {
    width: 680px;
    max-width: 86%;
    margin: 0 auto;
}
.info{
	width: 92%;
	max-width: 900px;
	margin: 0 auto;
	background: #fff;
	border-radius: 2rem;
	padding: 20px 40px;
	justify-content: space-between;
    display: flex;
	position: relative;
	box-sizing: border-box;
	align-items: center;
}
.news{
	margin-bottom: 10px;
}
.news ul {
	margin-right:40px;
}
.news li {
    font-size: 15px;
	line-height: 2;
	border-bottom: 1px solid rgb(204, 204, 204, 0.5);
	font-weight: 500;
	display:flex;
	align-items:center;
	width:600px;
	max-width:100%;
}
.news dd{
	max-width:100%;
	font-weight: 500;
}
.news h2.headline {
    width: 200px;
	margin-bottom: 0;
}
.news li span.cate {
    background: #ccc;
    font-size: 12px;
	letter-spacing:1px;
    padding: 0 8px;
    border-radius: 0.8rem;
    margin-left: 2px;
	margin-right:6px;
    color: #fff;
	display:inline-block;
	margin-bottom: 4px;
}
.news li:last-child {
    border-bottom: none;
}
.news .button,.radio .button {
    position: absolute;
    right: -18px;
	top: 29%;
	z-index: 50;
}
a.news-title {
    white-space: nowrap;
    min-width: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}
section#radio.info {
    justify-content: left;
}
.radio{
	margin-bottom: 140px;
}
.radio ul{
	width: 530px;
	max-width:100%;
	display: flex;
	justify-content: space-between;
}
.radio li {
    width: 170px;
	content: '';
    background: url(../img/bg-radio_g.svg) no-repeat;
	background-size: cover;
	padding: 10px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}
.radio.info li span.en {
    background: var(--color-accent2);
    color: #fff;
    display: math;
    padding: 12px 6px 5px 12px;
    top: -3px;
    left: -18px;
	font-size:15px;
    position: relative;
    border-radius: 1rem;
}
.radio li a {
    background: #FFFBF2;
    padding: 4px 13px;
    border-radius: 1rem;
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
.radio h2.headline {
    width: 200px;
	margin-bottom: 0;
}
.radio .radio1 {
    position: absolute;
    left: 40px;
    bottom: -2px;
    width: 210px;
}
.radio .radio2 {
    position: absolute;
    right: -20px;
    bottom: 0px;
    width: 190px;
}
#radio.info {
    padding: 36px 30px 40px 40px;
}
.radio .button {
    top: 47%;
}
.radio h2.headline {
    line-height: 1.5;
    margin-top: -30px;
}
@media screen and (max-width: 560px) {
	#radio.info {
    padding: 70px 30px 30px 30px;
}
	.radio .button {
		top: 7%!important;
    }
	.sp.radio3 {
    margin-bottom: -30px;
    width: 100%;
    margin-top: 20px;
}
}

#aboutus {
    margin-bottom: 140px;
}
#activity,#partner{
	background: var(--color-bg1);
	border-radius: 80px;
	padding: 140px 0;
	margin-bottom: 10px;
}
#activity ul {
    display: flex;
    width: 750px;
	max-width: 94%;
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: space-between;
	margin-bottom: 20px;
}
#activity li {
    background: #fff;
    border-radius: 1.5rem;
    width: 100%;
    display: flex;
	justify-content:space-around;
    padding: 40px 20px;
    margin-bottom: 20px;
}
#activity li h4 {
    font-size: 22px;
}
#activity li span {
    display: inline;
    font-size: 16px;
}
#activity img {
    margin-bottom: 20px;
}
#activity img.illust {
	width:230px;
}
#activity .txt {
    width: 400px;
}
.sdgs-img {
    width: 600px;
	max-width: 82%;
    margin: 30px auto;
}
#support {
    padding: 140px 0;
    margin-bottom: 10px;
}
#support ul {
    display: flex;
    width: 1080px;
	max-width: 92%;
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: space-between;
	margin-bottom: 20px;
}
#support li {
    background: var(--color-bg1);
    border-radius: 1.5rem;
    width: 24%;
    padding: 30px 20px;
    margin-bottom: 20px;
}
#support li span {
    display: block;
    font-size: 14px;
	color: var(--color-accent2);
	margin-bottom: 6px;
}
#support li h4 {
    font-size: 20px;
	margin-bottom: 12px;
	line-height: 1.6;
}
#support li h4 span {
    font-size: 20px;
    display: inline;
    background: var(--color-accent2);
    padding: 2px 6px;
    color: #fff;
    font-weight: 500;
}
#support li p.lead {
    text-align: left;
    font-size: 14px;
	line-height: 1.5;
	margin-bottom:20px;
}
#support li p.button a {
    max-width: 90%;
}

/* Footer
=============================================== */
#contact{
	padding-top:140px;
	margin-top:-140px;
	z-index: 2;
    position: inherit;
}
.contact {
    background: #fff;
    width: 900px;
	max-width: 92%;
    margin: 0 auto;
    border-radius: 5rem;
	padding:80px 0 50px;
	margin-bottom:140px;
	box-shadow: 0px 0px 20px 5px rgb(106 100 93 / 0.1);
}
#contact p{
	font-size:16px;
	font-weight:500;
	margin-bottom:30px;
}
#contact .cv{
	display:flex;
	justify-content:space-between;
	width: 780px;
	max-width: 94%;
    margin: 0 auto;
}
#contact p.button a {
    width: 210px;
	max-width: 90%;
    line-height: 1.6;
    padding: 18px 20px;
}
#contactp.button a img.icon {
    top: 38px;
}
footer{
	padding-top: 320px;
	margin-top:-350px;
	background:var(--color-bg2);
}
#footer{
	width:1000px;
	max-width: 94%;
	margin:0 auto;
	justify-content:space-between;
	display:flex;
	position: relative;
    z-index: 1;
	margin-bottom: 100px;
}
#footer section {
    width: 280px;
}
.sns-area {
    justify-content: center;
    display: flex;
}
.sns-area img {
    padding: 16px;
}
ul.navi-area {
    font-size: 18px;
    font-weight: 500;
	margin-bottom:10px;
}
ul.navi-area li {
    margin-bottom: 6px;
}
ul.navi-area img {
    position: absolute;
    top: 14px;
}
ul.navi-area span {
    font-size: 14px;
    display: block;
    line-height: 1.3;
}
ul.navi-area a{
	position: relative;
}

#footer section:last-child ul.navi-area li {
    margin-bottom: 12px;
}
.footernav{
	background:#DBD0C3;
	padding:14px 100px;
	display:flex;
	justify-content:space-between;
}
.footernav p{
	font-size:12px;
}
@media screen and (max-width: 560px) {
.kv-copy img {
    bottom: 186px;
	position:absolute;
	left:50%;
	transform:translate(-50%, -50%);
}
.headline{
	line-height:1.6;
}
.headline span {
    margin-bottom:10px;
}
.page-id-54 section.title .headline span:last-child {
    font-size: 16px;
    margin-bottom: 2px;
}
.info{
	display:block;
	padding:40px 25px;
	}
.news h2.headline {
    margin-bottom: 10px;
}
.news .button, .radio .button {
    right: 30px;
    top: 10%;
}
a.news-title{
	white-space:normal;
	line-height:1.7;
}
.info p.button a {
    width: 80px;
    border-radius: 3rem;
    padding: 16px;
    text-align: center;
	border: 2px solid var(--color-accent2);
    background: none;
    color: var(--color-accent2);
	font-weight:500;
}
.info p.button a img.icon {
    width: 8px;
    position: absolute;
    top: 24px;
    right: 15px;
}
.news ul{
	margin-right:0;
}
.news li {
	flex-direction: column;
	align-items: flex-start;
	line-height: 1.5;
	padding: 10px 0px;
}
.radio ul{
	display: block;
}
.radio li {
    width: 100%;
	margin-bottom:10px;
}
.radio h2.headline {
    margin-bottom: 10px;
}
#activity li {
    width: 100%;
	display: flex;
	padding: 24px 20px 14px 20px;
	margin-bottom: 10px;
}
#activity img {
    width: 40%;
	margin-right:15px;
}
#activity img.illust {
    width:140px;
}
.txt {
    text-align: left;
}
#activity li h4 {
    font-size: 20px;
	line-height: 0.7;
	margin-bottom: 16px;
}
#activity li:last-child h4 {
    line-height: 1.5;
}
#activity li .txt span {
    font-size: 14px;
}
#activity li p.button a {
    width: 130px;
    border-radius: 2rem;
    padding: 12px;  
	text-align:center;
}
#activity img.icon {
    width: 8px;
    position: absolute;
    right: 0;
}
#partner .heading {
    width: 82%;
    margin: 0 auto;
    text-align: left;
	margin-bottom:10px;
}
#support li {
    width: 100%;
}
#contact .cv{
	display:block;
}
#contact p.heading {
    width:80%;
    margin:0 auto;
	text-align: left;
	margin-bottom:20px;
}
#contact p.button {
	margin-bottom:10px;
}
#contact p.button a img.icon {
    top: 36px;
}
#footer{
	display:block;
	padding:0 20px;
	margin-bottom: 50px;
}
#footer section{
	width:100%;
}
#footer img{
	margin-bottom:20px;
}
.footernav{
	padding:14px 20px;
	display:block;
	text-align:center;
}
.footernav p{
	margin-bottom:10px;
}
}

/* News Posts
=============================================== */
.single #container,.archive #container{
	background: #FFFDF8;
}
.single article{
	width:700px;
	max-width:86%;
	margin:0 auto;
	padding:80px 0;
}
.single-box .headline span{
	display:inline-block;
}
.single-box .headline span.cate{
	margin-left: 0;
    background: #ccc;
    padding: 1px 6px;
    border-radius: 0.8rem;
	color:#fff;
	font-size:12px;
	margin-bottom:30px;
	letter-spacing:1.5px;
}
.single-box .headline span.en{
	margin-right:4px;
}
.single-box .headline span.cate::before{
	content:none;
}
.single .cv-box h4, .archive .cv-box h4{
	font-size:18px;
	line-height: 1.6;
	margin-bottom:20px;
}
.single .cv-box h4 span, .archive .cv-box h4 span{
	display:inline-block;
	font-size:12px;
	color:#41BAC6;
	border:1px solid #41BAC6;
	border-radius:2rem;
	padding: 2px 10px 0;
    margin-bottom: 10px;
}
.single .cv-box, .archive .cv-box {
    background: var(--color-bg2);
}
.single .cv-box ul, .archive .cv-box ul {
    text-align: left;
    width: 80%;
    margin: 0 auto;
	font-size:14px;
}
.single .cv-box li, .archive .cv-box li {
    position:relative;
	padding-left: 1em;
    margin-bottom: 8px;
}
.single .cv-box li::before, .archive .cv-box li::before {
	content:"";
	position:absolute;
	top:.8em;
	left:0;
	width:4px;
	height:4px;
	border-radius:50%;
	background:#666;
}
.single .cv-box li span.cate, .archive .cv-box li span.cate {
    background: #ccc;
    border-radius: 0.8rem;
    color: #fff;
    font-size: 12px;
    padding: 1px 5px;
}
.single .cv-box li p, .archive .cv-box li p {
    line-height: 1.5;
}
section.archive-news {
    width: 720px;
	max-width:86%;
    margin: 0 auto;
    padding: 80px 0;
    font-size: 18px;
}
section.archive-news .news-list li {
    border-bottom: 2px solid var(--color-bg2);
    padding: 10px 0;
}
section.archive-news .news-meta {
    display: inline-block;
}
section.archive-news span.cate {
    background: #ccc;
    padding: 2px 6px;
    border-radius: 0.8rem;
    font-size: 14px;
    letter-spacing: 0.5px;
    color: #fff;
    margin-left: 4px;
    margin-right: 8px;
}
.archive-news a {
    width: 100%;
}
.page-id-63 .news {
    box-shadow: 0px 0px 20px 5px rgb(106 100 93 / 0.1);
	margin-bottom: -60px;
}
.page-id-63	section.prologue {
    padding-bottom: 60px;
}
.page-id-63 section.point {
    padding-top: 200px;
}
.point li p.center {
    font-size: 15px;
    text-align: left;
    width: 90%;
    margin: 0 auto;
}
.prologue.noflex {
    display: block;
}
.prologue.noflex p.lead {
    text-align: left;
}
.supporter .flex {
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.supporter .flex li{
	width:300px;
	max-width:80%;
	margin:0 auto;
	text-align: center;
	margin-bottom:30px;
}
.supporter .flex li span{
	display:block;
	margin-bottom:6px;
}
.prologue.noflex .spp-img {
    width: 300px;
    max-width: 70%;
    margin: 0 auto;
    margin-top: -30px;
}
.page-id-183 h5.headline span{
	border:1px solid #64C4CD;
	padding:0 8px;
	border-radius:2rem;
	color:#64C4CD;
	display:inline-block;
}
.page-id-183 h5.headline span:before{
	content:none;
}


@media screen and (max-width: 560px) {
section.archive-news {
    padding: 30px 0 100px;
}
section.archive-news .news-meta{
		display:block;
}
.single .cv-box ul {
    width: 100%;
}
.single .cv-box {
    padding: 30px;
}
.single .cv-box h4 {
    font-size: 16px;
    margin-bottom: 30px;
}
.single h3.headline.center {
    text-align: left;
}
.single h3.headline.center span {
    margin-left: 0;
}
.single article {
    padding: 40px 0 80px;
}
.page-id-63 .news {
	margin-bottom: -150px;
}
.page-id-63 section.point {
    padding-top: 260px;
}
.supporter .flex {
	display:block;
}
}

/* Contents
=============================================== */
.page #container,.error404 #container {
	background: #FFFDF8;
}

section.title{
	margin-top: 100px;
    color: var(--color-text);
    height: 220px;
    align-items: center;
    display: grid;
    padding: 0 13.5%;
	background-image:url(../img/bg-title.png),linear-gradient(40deg, #FAE7E5 40%, #B1E1E6 70%);
	background-size: contain;
    background-repeat: no-repeat;
    background-position: right;
}
section.title .headline{
	margin-bottom:0;
	font-size:30px;
	margin-top: -10px;
}
section.title .headline span{
	font-size:20px;
	margin-bottom:-5px;
}
section.title .headline span.en{
	border:1px solid var(--color-text);
	padding:0 10px;
	display:inline-block;
	border-radius:1em;
	margin-bottom: 10px;
	font-size:14px;
}
section.title .headline span:before{
	content:none;
}
section.prologue {
    width: 1000px;
    max-width: 86%;
    margin: 0 auto;
    padding: 120px 0;
	display:flex;
	justify-content:space-between;
}
section.prologue .txt {
    width: 480px;
	max-width:100%;
}
section.point {
    width: 100%;
    padding: 120px 0;
	background:var(--color-bg3);
}
.prologue .img {
    width: 400px;
	max-width:80%;
}
section.point .headline{
	text-align:center;
}
.wrapper {
    width: 1000px;
    max-width: 92%;
    margin: 0 auto;
}
.wrap {
    width: 750px;
    max-width: 88%;
    margin: 0 auto;
}
section.point .flex, section.profile .flex {
    display: flex;
    justify-content: space-between;
}
section.point ul.flex li {
    width: 310px;
}
section.point ul.flex h4 {
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 10px;
    text-align: center;
}
section.point ul.flex img {
    margin-bottom:20px;
}
section.profile {
    width: 100%;
    padding: 120px 0;
}
section.profile li.flex {
    margin-bottom: 40px;
}
section.profile img {
    width: 300px;
    margin-bottom: 20px;
}
section.profile .txt,section.story .txt {
    width: 370px;
}
section.profile .txt h4 {
    font-size: 20px;
    margin-bottom: 10px;
}
section.profile .txt h4 span {
    font-size: 14px;
    display: block;
}
section.profile .txt p.position {
    margin-bottom: 10px;
    font-weight: 500;
}
section.story .flex {
    width: 90%;
    margin: 0 auto;
    background: var(--color-bg2);
    border-radius: 2rem;
    padding: 140px 100px;
    display: flex;
	justify-content:space-between;
}
section.story .history{
	width:480px;
}
section.story .flex .txt h3 {
    text-align: left;
}
section.story dl{
	border-left:1px solid;
}
section.story dt:before{
	content: '';
    background: url(../img/icon-story01.svg) no-repeat;
    margin-right: 8px;
    transform: translateY(5px);
    width: 25px;
    height: 25px;
    display: inline-block;
}
section.story dd:before{
	content: '';
    background: url(../img/icon-story02.svg) no-repeat;
    margin-right: 12px;
    transform: translateY(1px);
    width: 10px;
    height: 10px;
    display: inline-block;
}
.history dt {
    margin-left: -14px;
	margin-top:20px;
	margin-bottom: 5px;
	font-weight:500;
}
.history dt a {
    font-size: 12px;
    border-radius: 2rem;
    border: 1px solid;
    padding: 1px 6px 2px;
    margin-left: 4px;
    display:inline;
	font-weight:400;
}
.history dt a:after {
    content: '';
    background: url(../img/icon-out.svg) no-repeat;
    width: 13px;
    height: 15px;
    margin-left: 2px;
    display: inline-block;
    transform: translateY(1px);
}
.history dd {
    margin-left: 1.2em;
	margin-bottom: 2px;
	text-indent: -1.4em;
	font-size:14px;
}
section.message {
    width: 100%;
    padding: 120px 0;
}
section.message .wrap{
    width: 900px;
	max-width:92%;
}
section.message .profile{
    width: 220px;
    margin: 0 auto;
    position: relative;
	z-index:2;
}
img.star {
    position: absolute;
    width: 820px;
    top: 0px;
	right: 30px;
}
img.sp.star {
    position: absolute;
    width: 100%;
    top: -20px;
    right: 0;
}
.message .profile h5 {
    position: absolute;
    top: 140px;
    right: -110px;
    font-size: 20px;
    font-weight: 600;
}
.message .profile h5 span {
    font-size: 14px;
    display: block;
}
.message .txt {
    background:#F0EDE4;
	padding-top:160px;
	margin-top:-120px;
	padding-bottom:80px;
	border-radius:1rem;
	z-index:1;
	position: relative;
}
.message .txt p{
    width:720px;
	max-width:87%;
	margin:0 auto;
	margin-bottom:20px;
	position:relative;
}
.page-id-36 section.point {
    padding-bottom:200px;
}
section.routine {
    width: 700px;
	max-width:90%;
    margin: 0 auto;
    margin-top: -130px;
    background: #fff;
    border-radius: 2rem;
    padding: 50px 40px;
	text-align:center;
	position: relative;
}
section.routine h4 {
    text-align: center;
    font-size: 24px;
	margin-bottom:20px;
}
.routine .icon {
    position: absolute;
    width: 30px;
    top: -38px;
	right: 48%;
}

section.room {
    width:980px;
	max-width:92%;
	padding: 140px 0;
	margin:0 auto;
}
.floor-map-wrap{
  width:100%;
  max-width:900px;
  margin:0 auto;
}
.floor-map{
  display:block;
  width:100%;
  height:auto;
}
ul.wrap_m.staff li {
    width: 260px;
}
.messeage .txt.sudachi {
    width: 600px;
    max-width: 100%;
}
.messeage .txt.sudachi p {
    margin-bottom: 10px;
}
.messeage .img.mb20 {
    width: 210px;
    margin: 0 auto;
}
section.flow{
	margin-bottom:100px;
}
section.flow .wrapper{
	width: 1000px;
    max-width: 86%;
    background: #F7F5F1;
    border-radius: 5rem;
	padding: 20px 40px;
	margin-bottom: 40px;
}
section.flow ul.flex{
	display:flex;
	justify-content:center;
}
section.flow ul.flex li {
    width: 300px;
    text-align: center;
    border-right: 2px solid #fff;
    padding: 20px 26px;
	position: relative;
	margin-right: 5px;
}
section.flow ul.flex li:last-child {
	border-right:none;
}
section.flow ul li p {
    text-align: left;
	font-size:14px;
}
section.flow ul li span {
    background: #fff;
    border: 1px solid;
    border-radius: 1.5rem;
    padding: 0px 11px;
    margin-bottom: 10px;
    font-size: 14px;
    display: inline-block;
}
section.flow ul li h5 {
    line-height: 1.5;
    margin-bottom: 10px;
}
section.flow ul.flex li:after{
	content: '';
    background: url(../img/icon-flow.svg) no-repeat;
    width: 40px;
    height: 40px;
    position:absolute;
	top:45%;
	right: -25px;
}
section.flow ul li:last-child:after{
	content: none;
}
.page-id-54 section.point {
    padding: 120px 0 220px;
}
section.wide-area {
    background: var(--color-bg2);
    border-radius: 8rem;
    margin-top: 10px;
    padding: 140px 0;
}
section.wide-area.mtm {
    margin-top: -90px;
}
section.point.pb200 {
    padding-bottom: 200px;
}
.wrapper {
    width: 1000px;
    max-width: 86%;
    margin: 0 auto;
}
section.cv-area {
    text-align:center;
	width:84%;
	margin:0 auto;
	padding: 140px 0;
}
section.cv-area img {
    width: 300px;
    max-width: 70%;
}
.wrap_m {
    width: 900px;
    max-width: 86%;
    margin: 0 auto;
    display: flex;
	justify-content:space-between;
}
.reason.wrap_m .img{
	width:370px;
	max-width:100%;
}
.reason.wrap_m .img img{
	width:100%;
}
.reason.wrap_m .txt{
	width:480px;
	max-width:100%;
}
.wrap_m .img img {
    width: 360px;
}
.wrap_m .txt {
    width: 100%;
}
.wrap_m.rowre{
    flex-direction: row-reverse;
	margin-bottom:0;
}
.wrap_m.rowre .img {
    text-align: right;
}
.eventpic h5 {
    font-size: 24px;
    margin-bottom: 20px;
    font-weight: 600;
}
.cv-box{
	width:430px;
	max-width:100%;
	background:#fff;
	border-radius:3rem;
	padding: 40px 35px;
    text-align: center;
	margin-bottom:20px;
}
.cv-box h5{
	font-size:24px;
	line-height: 1.6;
	margin-bottom:20px;
}
.cv-box h5 span{
	display:inline-block;
	font-size:14px;
	color:#41BAC6;
	border:1px solid #41BAC6;
	border-radius:2rem;
	padding: 2px 10px 0;
    margin-bottom: 14px;
}
.cv-box p.left{
	text-align:left;
	margin-bottom:20px;
}
.cv-box img {
    width: 250px;
    max-width: 70%;
	margin-bottom:20px;
}

.page-id-123 section#support {
    padding-top: 80px;
}
.icon {
    width: 50px;
    margin: 0 auto;
	margin-bottom:30px;
}
.wrapper.pay{
	background:#fff;
	border-radius:4rem;
	text-align:center;
	padding: 50px 20px;
}
.wrapper.pay h4 {
    font-size: 24px;
    margin-bottom: 20px;
}
.wrapper.pay img {
    width: 400px;
    margin-bottom: 30px;
}

ol li {
    text-indent: -1.4em;
    margin-left: 1.6em;
    margin-bottom: 6px;
	list-style-type:none;
}
ol.type2 li {
    margin-left: 3em;
}
section.wrap.mb100 {
    padding-top: 80px;
}
.wrapper.flex {
	display:flex;
	justify-content: space-around;
}
.wrapper.flex .img {
    width: 380px;
}
.wrapper.flex .txt {
    width: 530px;
	max-width:100%;
}
.wide-area.flow .wrapper {
    background: #fff;
}
.wide-area.flow ul.flex li {
    border-right: 2px solid #F7F5F1;
}
.flow .wrap_s {
    background: #F0EDE4;
    border-radius: 1rem;
	padding:40px 60px;
}
.flow .wrap_s h5 {
    margin-bottom:20px;
	font-size:18px;
}
.flow .wrap_s ul {
    display: block;
}
.flow .wrap_s li {
    margin-bottom: 6px;
    text-indent: -1em;
    line-height: 1.6;
}
.wrap_s ul.list li {
    background: #fff;
    border-radius: 2rem;
    padding: 8px;
    font-weight: 500;
    text-indent: -1.4em;
    margin-bottom: 8px;
    padding-left: 2em;
    line-height: 1.6;
}
.wrap_s ul.list li:before {
    content: '● ';
    color: #F4D5AE;
	margin-right: 2px;
}
.podcast {
    margin: 50px 0 30px;
}
.podcast .box {
    padding: 20px;
	background:var(--color-bg2);
    border-radius: 2rem;
}
.podcast h3 {
    font-size: 18px;
    font-weight: 600;
}
.radio-text span.cate {
    font-size: 14px;
    color: var(--color-text);
    padding: 1px 6px;
    border: 1px solid;
    border-radius: 0.8rem;
}
.radio-text time {
    margin-right: 4px;
}
.radio-archive a {
    width: 100%;
}
.radio-text h4 {
    font-size: 18px;
    font-weight:500;
}
.radio-text h4 span {
    font-size: 20px;
    margin-right: 10px;
}
.radio-text {
    padding: 20px 0;
    border-bottom: 2px solid #F6F5EE;
}
section.flow ul li p.font_s {
    font-size: 13px;
}
.font_xs {
    font-size: 14px;
}
.left{
	text-align:left;
}
section.flow ul li p.font_xs {
	font-size: 13px;
    line-height: 1.6;
}
@media screen and (max-width: 560px) {
	section.prologue {
    display: block;
}
	.prologue .img {
    margin:0 auto;
}
	.message .profile h5 {
    position: relative;
    text-align: center;
    font-size: 20px;
	top: auto;
    right: auto;
}
	.message .txt {
    padding-top: 180px;
    margin-top: -170px;
}
	section.point .flex, section.profile .flex {
    display: block;
}
	section.point ul.flex li {
    width: 92%;
    margin: 0 auto;
    margin-bottom: 0;
}
	section.profile li.flex,section.profile .txt h4,section.profile .txt p.position {
    text-align: center;
}
	.txt p.position{
		line-height: 1.6;
	}
	section.profile .txt, section.story .txt {
    width: 92%;
    margin: 0 auto;
}
	section.profile .txt {
    margin-bottom: 60px;
}
	section.profile img {
    width: 240px;
}
	section.story .flex {
    display: block;
    width: 100%;
    border-radius: 5rem;
    padding: 140px 20px;
}
	section.story .flex .txt h3,section.story .flex .txt p {
    margin-bottom: 20px;
}
	section.story .history {
    max-width: 88%;
    margin: 0 auto;
	margin-top:30px;
}
	.history dd {
    margin-left: 4.5em;
    margin-bottom: 2px;
    text-indent: -4.7em;
    font-size: 14px;
}
	section.title .headline {
    font-size: 24px;
}
	section.title .headline span.en {
    padding-top: 4px;
}
	section.title{
	margin-top:75px;
    height: 200px;
	background-image:url(../img/bg-title_sp.png),linear-gradient(40deg, #FAE7E5 40%, #B1E1E6 70%);
	padding:0 10%;
}
	section.prologue .txt {
    margin-bottom: 40px;
}
	section.routine {
	box-sizing: border-box;
	border-radius:4rem;
	padding:40px 20px;
}
	.routinepic {
    overflow-x: auto;
    white-space: nowrap;
	box-sizing: border-box;
	margin-bottom:10px;
}
	.routinepic img {
    max-width: none;
	height:180px;
}
ul.wrap_m.staff li {
    width: 102%;
	margin-bottom:40px;
}
	section.flow .wrapper {
    padding: 20px 0px;
}
	section.flow ul.flex {
    display: block;
}
	section.flow ul.flex li {
    width: 90%;
    margin: 0 auto;
    border-right: none;
    border-bottom: 2px solid #fff;
	margin-bottom:10px;
}
	section.flow ul.flex li:after {
    bottom: -27px;
    right: 43%;
	top:auto;
    transform: rotate(90deg);
}
	section.flow ul.flex li p {
    margin-bottom: -2px;
}
	section.flow ul.flex li:last-child {
    border-bottom: none;
}
.wide-area.flow ul.flex li {
    border-right: none;
	border-bottom:2px solid #F7F5F1;
}
	.wrap_m {
    display: block;
}
	.reason.wrap_m {
    display: flex;
    flex-direction: column-reverse;
}
	.reason.wrap_m.mb80 {
    margin-bottom: 40px !important;
}
	.reason p.left{
	width:360px;
}
	.eventpic.txt {
    margin-bottom: 30px;
}
	.eventpic.txt {
    width: 520px;
}
	.map.wrap_m img {
    width: 100%;
}
	.wrap_m .img img {
    width: 100%;
}
	section.cv-area img {
    width: 70%;
}
	section.cv-area p.lead {
    text-align: left;
}
	.cv-box h5{
	font-size:20px;
	margin-bottom:10px;
}
	.cv-box img{
	margin-bottom:10px;
}
	.page-id-123 section#support {
    padding-top: 40px;
}
	.wrapper.flex .img {
    max-width: 80%;
    margin: 0 auto;
	margin-bottom:20px;
}
	.flow .wrap_s {
	padding:40px;
}
	.wrap_s ul.list li {
	padding:10px;
    padding-left: 2.2em;

}
	.wrapper.flex .txt p.button {
    text-align:center;
}
	.wrapper.flex {
    display: block;
}
	section.wrap.mb100 {
    padding-top: 40px;
}
.prologue .center p {
    text-align: left;
}
.page-id-8 section.point ul.flex li,.page-id-63 section.point ul.flex li {
    margin-bottom: 40px;
}
.txt.sudachi h4 {
    text-align: center;
    padding-bottom: 10px;
}
}

/* Podcast */
h2.wp-block-heading{
	font-size: 20px;
    margin-bottom: 10px!important;
}
article p {
    margin-bottom: 26px;
}
article h3 {
    font-size:18px;
	margin-bottom:8px;
}
article h4.wp-block-heading{
	margin-bottom:8px;
}
p.has-text-align-center {
    text-align: center;
    opacity: 0.2;
}
ul.wp-block-list,ol.wp-block-list {
    margin-bottom:20px;
}
ul.wp-block-list li {
    position: relative;
    margin-bottom: 3px;
    padding: 0 0 0 1em;
}
ul.wp-block-list li::before {
    display: block;
    position: absolute;
    top: 4px;
    top: 0.6em;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50vh;
    background-color: var(--color-main);
    line-height: 1;
    content: "";
}
.nav-links {
    text-align: center;
    display: flex;
    width: 280px;
    margin: 30px auto 140px;
}

/* Maplink */
.floor-map-wrap{
	position:relative;
}

.room-popup{
	display:none;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%, -50%);
	z-index:5;
	background:#fff;
	padding:15px 20px;
	border-radius:16px;
	box-shadow:0 8px 24px rgba(0,0,0,.15);
	width:26%;
	text-align:justify;
	margin-top:20px;
}
.room-popup p{
	font-size:14px;
	line-height:1.5;
}
.room-popup.active{
	display:block;
}
.room-popup#pin1{
	left:29%;
	top:29%;
}
.room-popup#pin2{
	left:56%;
	top:42%;
}
.room-popup#pin3{
	left:54%;
	top:42%;
}
.room-popup#pin4{
	left:67%;
	top:83%;
}
.room-popup#pin5{
	left:33%;
	top:43%;
}
.room-popup#pin6{
	left:76%;
	top:77%;
}
@media screen and (max-width: 560px) {
	.room-popup{
	padding:20px;
	box-shadow:0 8px 24px rgba(0,0,0,.3);
	width:90%;
}
	button.room-popup-close.sp {
    position: inherit;
    right: 20px;
    height: 20px;
    border-radius: 2rem;
}
.room-popup#pin1,.room-popup#pin2,.room-popup#pin3,.room-popup#pin4,.room-popup#pin5,.room-popup#pin6{
	left:50%;
	top:42%;
}
}
