@charset "UTF-8";
@import url("../css/font.css");


/*common class*/
.flex-wrapper {
position: relative;
display: flex;
flex-wrap: wrap;
}
.aligncenter {
display: block;
margin-right: auto;
margin-left: auto;
}
.alignright {
float: right;
margin-bottom: 20px !important;
margin-left: 20px !important;
}
.alignleft {
float: left;
margin-right: 20px !important;
margin-bottom: 20px !important;
}
.wp-caption,
[class*='wp-image'] {
display: block;
max-width: 100% !important;
text-align: center;
}
.wp-caption-text {
margin-top: 0;
}
.img-2X{
width:200%;
height:200%;
}
.flexcenter {
display: flex;
justify-content: center;
flex-wrap:wrap;
}
h2.wp-block-heading {
font-size:1.6rem;
color:#EE001E;
margin-top:2rem;
}
svg.external-link{ width:1.6rem; height:1.6rem; }


/*swiper*/
.swiper-initialized .swiper-wrapper{visibility: visible;opacity:1;-webkit-transition: all 0.5s;transition: all 0.5s;}
.swiper-wrapper{user-select: none;-webkit-user-select: none;}
.swiper-initialized .spinner {display:none;}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {margin: 7px;}
.swiper-pagination-bullet {height: 20px;width: 20px;}
.slide-img img{ display: block; }
.swiper-pagination {text-align:left; margin-left:1em;}
.swiper-pagination-bullet {background: rgba(255,255,255,.7); opacity:1; border:3px #f5f5f5 solid;}
.swiper-pagination-bullet-active {background: #EE001E; opacity:1;}
@media screen and (min-width: 961px){
#mainvisual .swiper-slide {margin:0 auto;}
.swiper-button-prev.swiper-button-disabled-user,
.swiper-button-next.swiper-button-disabled-user {opacity: 0.35;cursor: auto;pointer-events: none;}
.swiper-pagination-not-clickable {opacity: 0.5;pointer-events: none;}
}




/* header */
#header {position:relative;
background: rgb(250,250,250);
}
#header #gnavi-pc a {color:#EE001E;}
#header_inner{
position:relative;
z-index:3;
margin:auto;
transition: .5s;
height:100%;
}
#header h1 {
text-align:center;
display: flex;
justify-content: center;
align-items: center;
letter-spacing: 7px;
}
#header h1 a {
width:16vw;
display:flex;
flex-wrap:wrap;
justify-content:center;
align-content:center;
}
#header h1 span {
display:block;
letter-spacing: 0;
margin-bottom:.2rem;
font-weight:normal;
color:#FFF;
}
#header-sns {
top: 3.5em;
right: 2%;
}
#header-sns svg {
width: 2rem;
height: 2rem;
vertical-align: top;
fill:#EE001E;
}
#header-sns a:hover svg {fill: #111;}




/* page */
#toppage,#page{ 
height:100%;
padding:0;
position:relative;
}
#toppage .mv-name p {
position: absolute;
font-size: 1.8vw;
line-height: 1.3;
text-align: left;
transform: translate(5%, -105%);
top: 30%;
left: 50%;
text-shadow: 1px 4px 1px #FFF, 1px -4px 1px #FFF, -1px 4px 1px #FFF, -1px -4px 1px #FFF, 2px 3px 1px #FFF, 2px -3px 1px #FFF, -2px 3px 1px #FFF, -2px -3px 1px #FFF, 3px 2px 1px #FFF, 3px -2px 1px #FFF, -3px 2px 1px #FFF, -3px -2px 1px #FFF, 4px 1px 1px #FFF, 4px -1px 1px #FFF, -4px 1px 1px #FFF, -4px -1px 1px #FFF;
}
#toppage .mv-name p span {
display:block;
}

/* parallax */
.parallax_wrapper{
position:relative;
overflow-x: hidden;
overflow-y: auto;
}
.parallax_content{
background-attachment: fixed;
background-position: 50% 0%;
background-size: 100%;
background-repeat: no-repeat;
}




/*section-header*/
.section-header {
 position:relative;
}
.section-header h2 {
position: relative;
margin:auto;
font-size: 5vw;
line-height:1.2;
letter-spacing:2px;
color:#EE001E;
text-align:center;
text-shadow:
1px 5px #FFF, 1px -5px #FFF,
-1px 5px #FFF,-1px -5px #FFF,
2px 4px #FFF, 2px -4px #FFF,
-2px 4px #FFF,-2px -4px #FFF,
3px 3px #FFF, 3px -3px #FFF,
-3px 3px #FFF,-3px -3px #FFF,
4px 2px #FFF, 4px -2px #FFF,
-4px 2px #FFF,-4px -2px #FFF,
5px 1px #FFF, 5px -1px #FFF,
-5px 1px #FFF,-5px -1px #FFF;
}
.section-header h2:after {
display: block;
font-size: 1.6rem;
}
.section-header p {
position:relative;
margin: auto ;
}

/* whatsnew */
#whatsnew{position:relative; z-index:1;padding:6vw 0;overflow:hidden;
background: linear-gradient(90deg, rgba(214,0,0,0.1) 0%, rgba(255,230,230,0.05) 25%, rgba(255,230,230,0.05) 75%, rgba(214,0,0,0.1) 100%);
}
#whatsnew-inner{
display:flex; justify-content:space-between; flex-wrap:wrap;margin:0 auto;max-width: 1280px; width: 92%;overflow:hidden;-ms-overflow-style: none;scrollbar-width: none; gap: 2.5vw 0;}
#whatsnew:before {
position:absolute;
width:100%;
z-index:0;
top:-3.5vw;
content:"AIKO SHIMAJIRI";
color:rgba(255,30,0,.1);
font-size:8vw;
font-weight:900;
letter-spacing:-.5vw;
text-align:center;
}
#whatsnew:after {
width:100%;
position:absolute;
z-index:0;
bottom:-3.5vw;
content:"What's NEW";
color:rgba(255,30,0,.1);
font-size:8vw;
font-weight:900;
letter-spacing:-.5vw;
text-align:center;
}
#whatsnew iframe{
-ms-overflow-style: none;
scrollbar-width: none;
border: none;
width:100%;
height: 400px;
}
#whatsnew:-webkit-scrollbar{display: none;}
#whatsnew .whatsnew-item{flex-basis:48.5%;z-index:1; border: 1px #EE001E solid;}
#whatsnew #news.whatsnew-item > div { margin-left:auto; margin-right:0;-ms-overflow-style: none;scrollbar-width: none;}
#whatsnew #X.whatsnew-item > div { margin-left:0; margin-right:auto;-ms-overflow-style: none;scrollbar-width: none;}
#whatsnew .whatsnew-title {background:#EE001E; color:#FFF; padding:.3em 1em; display:flex; align-items: center; flex-wrap: wrap; position:relative;font-weight:900; font-size:1.2em;}
#whatsnew .whatsnew-title:last-child{
 margin-left: auto;
}
#whatsnew .whatsnew-title::before {
content:""; position:absolute;
height:10px;
width:10px;
border-top:2px #FFF solid;
border-left:2px #FFF solid;
border-radius:3px 0 0 0;
top:4px; left:4px;
}
#whatsnew .whatsnew-title::after {
content:""; position:absolute;
height:10px;
width:10px;
border-bottom:2px #FFF solid;
border-right:2px #FFF solid;
border-radius:0 0 3px 0 ;
bottom:4px;
right:4px;
}
#whatsnew .whatsnew-title a {
font-size:1.4rem;
display:inline-block;
color:#EE001E;
background:#FFF;
border-radius:1em;
padding:0 .5em;
margin-left: auto;
}
#whatsnew .whatsnew-title a:hover {
background:#EE001E;
color:#FFF;
}
#whatsnew .whatsnew-title a:hover svg{
fill:#FFF;
}
#whatsnew .whatsnew-title a svg{
display: inline-block;
position:static;
width:1.4rem;
height:1.4rem;
margin-left:3px;
vertical-align:-2px;
transform: translate(0%, 0%);
fill:#EE001E;
}

/* X */
#X {
position:relative;
overflow-x: hidden;
background:#f5f5f5;
}
#X .whatsnew-title svg{
width:1.2em;
height:1.2em;
fill:#FFF;
}
#X-embed{
position:relative;
width:100%;
margin: 0 auto;
background:#f5f5f5;
height:400px;
}
#x.whatsnew-title a:hover {background-color:rgba(0,150,255,.8);}
#x #x-embed {background:rgba(255,255,255,.7);}

/*latest_news*/
#latest_news {
position:relative;
}
#latest_news ul {
position:relative;
z-index:1;
padding-top:1rem;
background-color:#fff;
height:400px;
overflow-Y:scroll;
}
#latest_news li {
display:flex;
padding: 1rem;
border-bottom:1px #ccc dotted;
}
#latest_news li:after {
content:"";
display: block;
clear:left;
}
#latest_news li:first-child {
padding-top: 0;
}
#latest_news ul li > p {
flex-basis:calc(100% - 75px);
}
#latest_news img {
margin: 0 12px 0 0 !important;
width: 75px;
height:100%;
}
#latest_news li a {
color:#C03;
text-decoration:underline;
}
#latest_news span {
display: block;
}
#latest_news span.date {
font-size:1.2rem;
color:#EE001E;
background-color:#f5f5f5;
padding:0 5px;
margin-bottom:5px;
}
#latest_news a:hover:after{
width: 100%;
}

/*YouTube*/
#youtube .whatsnew-title svg{
width:1.2em;
height:1.2em;
margin-right:5px;
fill:#FFF;
}

/* Instagram*/
#instagram .whatsnew-title svg{
width:1.2em;
height:1.2em;
margin-right:5px;
fill:#FFF;
}
#instagram .section-body {
display: flex;
height:100%;
justify-content: center;
align-items: center;
font-size:2em;
background-color:#FFF;
}
#instagram .section-body span {
position:relative;
top:-1em;
}


/* aisatsu */
#aisatsu .section-header {
padding: 6rem 0 3rem;
}
#aisatsu h2:after{
content:"MESSAGE";
}
#aisatsu .parallax_content{
padding:0 0 10rem;
}
#aisatsu .content {
background-color:rgba(255,255,255,.8);
padding:5rem;
position:relative;
width:50%;
max-width:1280px;
margin:auto;
border-radius:1rem;
font-family: 'Hina Mincho';
font-size:2rem;
line-height:2;
font-weight:800;
letter-spacing:2px;
margin-left:auto;
}
#aisatsu .content div {
display:flex;
flex-flow: row wrap;
width:12.25em;
margin-top:3rem;
margin-left:auto;
margin-right:0;
}
#aisatsu .content div span{
display:block;
}
#aisatsu .content div span:nth-of-type(1) {
font-size:1.6rem;
line-height:1.4;
margin-bottom:1rem;
}
#aisatsu .content div span:nth-of-type(2) {
line-height:1;
font-size:4rem;
white-space:nowrap;
}
#aisatsu .content strong {
font-size:120%;
color:#c02;
letter-spacing:0;
}
@media only screen and (max-width: 520px){
#aisatsu .content{width:82%;}
}




/*vision*/
#vision {
position:relative;
background-image:url("../img/bg-vision-2.svg");
background-repeat:no-repeat;
background-position:center;
padding-top: 20vw;
}
#vision .section-header h2 {
line-height:1.2;
z-index:2;
}
#vision h2:after{
content:"VISION";
}
#vision .section-header{
position:absolute;
top:8vw;
left:50%;
transform: translateX(-50%);
overflow:visible;
}
#vision #vision-title{
margin:0 auto 2.5vw;max-width: 1280px; width: 92%;
}
#vision > ul {
margin:0 auto;max-width: 1280px; width: 92%;
margin:0 auto 2.5vw;
display: grid;
grid-template-columns: auto auto;
grid-template-rows: auto auto;
grid-column-gap: 2.5vw;
grid-row-gap: 2.5vw;
}
#vision > ul li{
background:rgba(255,255,255,.9);
border-radius:.5em;
padding:1em;
}
#vision > ul li h3{
position:relative;
font-size:clamp(2rem, 2vw,3rem);
line-height:1.2;
color:#C02;
border-bottom:1px #C02 solid;
padding:0 0 .25em 1em;
margin-bottom:.5em;
}
#vision > ul li h3:before{
position:absolute;
content:"";
height:100%;
width:5px;
background:#C02;
top:0;
left:0;
transform: skewX(-0.03turn) translate(3px,1px);
}
.vision1 { grid-area: 1 / 1 / 2 / 2; }
.vision2 { grid-area: 2 / 1 / 3 / 2; }
.vision3 { grid-area: 3 / 1 / 4 / 2; }
.vision4 { grid-area: 4 / 1 / 5 / 2; }
.vision5 { grid-area: 5 / 1 / 6 / 2; }
.vision6 { grid-area: 1 / 2 / 2 / 3; }
.vision7 { grid-area: 2 / 2 / 4 / 3; }
.vision8 { grid-area: 4 / 2 / 6 / 3; }
#vision > ul li p{
padding-left:1em;
margin-bottom:.5em;
}
#vision > ul li p:last-child {margin-bottom: 0;}
#vision > ul li p:first-letter{
font-size:75%;vertical-align:1px; color:#C02; margin-right:2px;
}







.swiper-vision .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 6rem;
}
.swiper-button-next, .swiper-button-prev {color:#EE001E;
text-shadow: 1px 5px #FFF, 1px -5px #FFF, -1px 5px #FFF, -1px -5px #FFF, 2px 4px #FFF, 2px -4px #FFF, -2px 4px #FFF, -2px -4px #FFF, 3px 3px #FFF, 3px -3px #FFF, -3px 3px #FFF, -3px -3px #FFF, 4px 2px #FFF, 4px -2px #FFF, -4px 2px #FFF, -4px -2px #FFF, 5px 1px #FFF, 5px -1px #FFF, -5px 1px #FFF, -5px -1px #FFF;
}
.swiper-vision .swiper-slide h3 { background:#EE001E; color:#FFF; text-align:center; display:flex; justify-content:center; align-items:center; height:5em;}
.swiper-vision .swiper-slide-item {
  position: relative;
  width: 100%;
}
.swiper-vision .swiper-slide-item::before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.swiper-vision .swiper-slide-item img {
  position: absolute;
  inset:0;
  display: block;  width: 100%; max-width: 100%; max-height: 100%;
  }


/*resume*/
#resume{
background-color: #f3f3f3;
background-image: radial-gradient(#FFF 30%, transparent 30%);
background-size: 20px 20px;
position:relative;
z-index:1;
overflow:hidden;
 padding-bottom:5rem;
}
#resume .section-header {
 padding: 6rem 0 3rem;
}
#resume h2:after {
    content: "プロフィール";
}
#resume_inner {
max-width:1280px;
width:92%;
margin:0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items:stretch;
padding:0;
overflow-x: hidden;
}
#profile {width:72%;}
#profile h3 {color:#EE001E;}
#profile h3 span:nth-of-type(1){ display:block;}
#profile h3 span:nth-of-type(2){ display:block; font-size: 6rem; line-height:1; letter-spacing:1px; text-align:center;}
#profile h3 span:nth-of-type(3){ display:block; font-size: 2rem; white-space: nowrap; text-align:center; color:#EE001E;}
#profile dl{ display: flex; flex-wrap: wrap; margin-top:3rem;}
#profile dt,#profile dd {padding: .5em; margin: 0 0 10px 0;}
#profile dt {
width:20%;
background-color: #EE001E;
color:#fff;
display: flex;
align-items: center;
justify-content: center;
}
#profile dd {
width:75%;
background-color: #FFF;
padding-right:10%;
}
#prof-image {
    position: absolute;
    width: 40vw;
    bottom: 0;
    right: 0;
    z-index: 2;
}


#history {
  position: relative;
  display: flex;
  align-items: center;
  padding:6rem 0;
  background-size: auto auto;
  background-color: rgba(255, 249, 249, 1);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgba(255, 239, 239, 1) 10px, rgba(255, 239, 239, 1) 25px );
}
#history:before {
    position: absolute;
    width: 100%;
    z-index: 0;
    top: -.25vh;
    content: "BIOGRAPHY";
    color: #EE001E;
    font-size: 3vw;
    font-weight: 900;
    text-align: center;
}
#history #timeline {
  display: flex;
  flex-direction: row;
  overflow-x: auto;
  height:360px;
  padding-left:4vw;
  padding-right:4vw;
}
#timeline > li {
  flex-shrink: 0;
  width: 20vw;
  min-width: 20vw;
  margin-right:20px;
  padding:1em;
  background-color:#FFF;
  border-radius:1em;
}
#timeline > li:lastchild {
  margin-right:0;
}
#timeline > li .time {
width:100%;
font-size:clamp(1.8rem,2vw,3rem);
color:#EE001E;
font-weight:900;
text-align:center;
margin-top:.75rem;
margin-bottom:0;
}
#timeline > li .img {
width:55%;
margin:auto;
}
#timeline > li.header {
display: flex;
background:#EE001E;
color:#FFF;
font-size:2vw;
font-weight:900;
align-items: center;
justify-content: center;
text-align:center;
padding:0;
}

@media only screen and (max-width: 960px){
.timeline time {
 font-size: 115% !important;
 line-height:1.2;
 margin-bottom:3px;
}
.timeline ul li {
margin-bottom:2rem;
}
.timeline ul li div {
width: 100%;
}
.timeline ul li p.img img {
max-height:18vw;
}
.timeline ul li p.img img:last-child {
margin-left: 5px;
}
.timeline time span {
white-space:nowrap;
}
}

@media only screen and (max-width: 520px){
#profile,#history {width:100%;}
#history { margin:4vh auto 0;}
}



#jisseki{
position:relative;
z-index:1;
overflow:hidden;
padding-bottom:5rem;
}
#jisseki .section-header {
 padding: 6rem 0 3rem;
}




/* jisseki */
#jisseki {
position:relative;
padding-bottom:6rem;
}
#jisseki .section-header h2 {
z-index:1;
}
#jisseki .section-header{
padding: 6rem 0 3rem;
}
#jisseki .section-header h2:after{
content:"AECHIVEMENTS";
}
#jisseki .section-header p {
margin-top:1rem;
font-size: 2rem;
text-align: center;
width:92%;
margin: 0 auto;
}
#jisseki .section-body {
max-width: 1280px;
width: 92%;
margin: 0 auto;
overflow-x: hidden;
}
#jisseki .section-body h3 {
font-size:3rem;
color:#EE001E;
margin-bottom:.5rem;
}
#jisseki .section-body ul{
margin-bottom:3rem;
position:relative;
width:100%;
}
#jisseki .section-body ul:nth-of-type(1){
width:50%;
}
#jisseki .section-body ul:before{
position:absolute;
content:"";
width:4px;
height:100%;
left:.75em;
background-color:#EE001E;
}
#jisseki .section-body li{
position:relative;
padding:.5rem 0 1rem 3rem;
line-height:1.6;
}
#jisseki .section-body li:after{
display:block;
position:absolute;
content:"";
width:96%;
height:1px;
background-color:#DDD;
margin-top:.5rem;
}
#jisseki .section-body .flex{
display:flex;
justify-content:space-between;
}
#jisseki .section-body .flex p{
flex-basis:45%;
margin-left:2em;
}


/* 各種ご案内 */
#information { 
position:relative;
background-color: #ba071f;
width:100%;overflow: hidden;padding: 0 0 30px;
z-index:0;
}
#information::before {
content:"";
width:100%;
height:100%;
position:absolute;
background-image:url("../img/flower-frame.svg");
background-repeat:no-repeat;
background-position:-20px -20px;
background-size:30vw;
z-index:0;
}
#information::after {
content:"";
width:100%;
height:100%;
top:0;
right:0;
z-index:0;
position:absolute;
background-image:url("../img/flower-frame.svg");
background-repeat:no-repeat;
background-position:-20px -20px;
background-size:30vw;
transform: scale(-1, 1);
}
#information-wipe {background: #f3f3f3; width: 100%; height: 100%;position: absolute;inset: 0;z-index:1;display:block;}
#information .section-header{
padding: 6rem 0 3rem;
}
#information .section-header h2{
color:#FFF;
text-shadow:none;
}
#information .section-header h2:after{
content:"INFORMATION";
}
#information .section-body {
position:relative;
z-index:1;
}
#information h3 {
color:#fff;
font-size:3.2rem;
text-align:center;
margin-bottom:1rem;
}
#information ul {
max-width:1280px;
margin:0 auto 3rem;
font-size:clamp(1.6rem, 1.6vw, 2.4rem);
text-align:center;
display:flex;
flex-wrap: wrap;
justify-content:space-between;
width:92%;
gap: 2.5% 2.5%;
}
#information li {
flex-basis:calc(92.5% / 4);
margin-bottom:25px;
aspect-ratio: 1;
position:relative;
}
#information li:nth-of-type(5),
#information li:nth-of-type(6) {
flex-basis:calc(97.5% / 2);
margin-bottom:0;
aspect-ratio:4;
}
#information a {
display:block;
position:absolute;
color: #EE001E;
background:#FFF;
font-weight:900;
border:2px #fff solid;
border-radius:2rem;
transition: all .2s ease-out;
width:100%;
height:100%;
padding:22% 0;
}
#information a:hover {
color: #FFF;
background-color: #EE001E;
}
#information a img {
display:block;
width:40%;
margin:0 auto;
margin-bottom:5%;
}
#information a:hover img{
filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(2%) hue-rotate(145deg) brightness(104%) contrast(101%);
}
#information li:nth-of-type(5) a,
#information li:nth-of-type(6) a {
width:100%;
padding:5.5% 0;
}
#information li:nth-of-type(5) a img,
#information li:nth-of-type(6) a img {
width:clamp(40px, 6vw, 80px);
margin-right:1em;
display:inline-block;
vertical-align:-3em;
}



/* アクセス */
#page-contents #access {background:#FFF; width:100%;position:relative; overflow: hidden;padding: 0 6rem 6rem;}
#access .flex {display:flex; justify-content:space-between; flex-wrap:wrap;gap: 45px 5%;}
#access .flex-item {flex-basis:47%;}
#access-wipe {background: #EEE; width: 100%; height: 100%;position: absolute;inset: 0;z-index:0;display:block;}
#access .section-header{
padding: 6rem 0 2rem;
}
#access .section-header h2{
color:#EE001E;
text-shadow:none;
margin-bottom:0;
}
#access h3 {
color:#EE001E;
font-size:3.2rem;
text-align:center;
margin-bottom:2rem;
}
#access h4 {color: #EE001E; font-size: 2.1rem; margin:0 auto 1rem;}
#access dl {
color:#EE001E;
max-width:1280px;
margin:0 auto 3rem;
font-size:1.6rem;
text-align:center;
display:flex;
flex-wrap: wrap;
border-top:1px #EE001E solid;
}
#access dt {
background:#fff0f0;
width: 15%;
border-bottom:1px #EE001E solid;
display:flex;
align-items:center;
justify-content:center;
}
#access dd {
line-height:1.3;
width: 85%;
border-bottom:1px #EE001E solid;
text-align:left;
padding:.75rem 0 .75rem 1.5rem;
display:flex;
align-items:center;
justify-content:start;
}
#access a {
position:relative;
color:#EE001E;
display:inline-block;
}
#access a::after {
display: block;
position: absolute;
content: '';
width: 0%;
height: 2px;
margin: -3px 0 0;
background-color:#FFF;
transition: all .3s ease-out;
}
#access a:hover:after {width:100%;}
.googlemap { width:100%; margin:0 auto;}
.googlemap iframe {width:100%;}
#access .announce {text-align:center; color:#EE001E; margin-top:3rem; margin-bottom:0; font-size:120%;}

/* リンクバナー */
#link_banners {
position:relative;
display: flex;
background: #F3F3F3;
align-items: center;
justify-content: center;
}
#link_banners img {
vertical-align:top;
}
#link_banners .row_inner {
transition: 450ms all;
max-height: 100%;
white-space: nowrap;
z-index:1;
position:relative;
padding:20px;
min-height:100px;
}
#link_banners .tile {
position: relative;
display: inline-block;
width: 240px;
margin-right: 20px;
font-size: 1.4rem;
cursor: pointer;
transition: 450ms all;
transform-origin: center center;
}
#link_banners .tile:last-child {
margin-right: 0;
}
#link_banners .tile_img {
width: 240px;
height: 120px;
object-fit: cover;
}
#link_banners .tile_details {
position: absolute;
inset:0;
opacity: 0;
background: #EE001E;
}
#link_banners .tile_details:before {
position: absolute;
top: 40%;
left: 50%;
transform: translate(-50%, -50%);
color:#FFF;
content: 'クリックすると以下のサイトを\A新規ウインドウで開きます';
white-space: pre;
font-size: 1rem;
text-align: center;
border:1px #FFF solid;
padding:.35em 1em;
}
#link_banners .tile:hover .tile_details {
opacity: 1;
}
#link_banners .tile_title {
position: relative;
font-size: 1.2rem;
width:100%;
bottom:20%;
padding: 0 10px;
color:#FFF;
text-align:center;
top:65%;
}
#link_banners .tile_title svg {
vertical-align:-1px;
width:12px;
height:12px;
fill:#fff;
}
#link_banners .row_inner:hover .tile {
opacity: 0.75;
}
#link_banners .row_inner:hover .tile:hover {
transform-origin: center;
transform: scale(1.1);
opacity: 1;
z-index: 5;
}


/* footer */
#footer {
position:relative;
background-color:transparent;
background-image:url("../img/flower-frame.svg");
background-repeat:no-repeat;
background-position:-20px -20px;
background-size:200px;
}


/* フッターメニュー */
#footer-menu-wrapper{
display: flex;
flex-wrap:wrap;
width: 94%;
max-width: 1280px;
margin: auto;
padding: 60px 0 0;
position: relative;
z-index: 1;
}
#footer-menu {
position: relative;
flex-basis: 60%;
order: 2;
height: 13.5em;
display: flex;
justify-content: start;
flex-flow: column wrap;
}
#footer-menu li{
width:33.3333%;
padding:.5rem 2rem;
font-size: clamp(1.4rem, 1.4vw, 1.8rem);
}
#footer-menu::before,
#footer-menu::after{
    content: "";
    display: block;
    width: 0;
    height:100%;
    border-right: 1px solid #fff;
    position: absolute;
}
#footer-menu::before{
top:0;
bottom:0;
left:33.3%;
}
#footer-menu::after{
top:0;
bottom:0;
right:33.3%;
}
#footer-menu a{
color:#FFF;
}


/* フッターロゴ */
#footer-logo {
flex-basis:36%;
position: relative;
order: 1;
margin-right:4%;
}
#footer-logo p.name {
width:90%;
margin:0 auto 20px;
}
#footer-logo p span {
display:block;
font-size:1.6rem;
font-weight:bold;
line-height:1;
color:#EE001E;
color:#EE001E;
text-shadow:
1px 4px 1px #FFF,1px -4px 1px #FFF,-1px 4px 1px #FFF,-1px -4px 1px #FFF,
2px 3px 1px #FFF, 2px -3px 1px #FFF, -2px 3px 1px #FFF, -2px -3px 1px #FFF,
3px 2px 1px #FFF, 3px -2px 1px #FFF, -3px 2px 1px #FFF, -3px -2px 1px #FFF,
4px 1px 1px #FFF, 4px -1px 1px #FFF, -4px 1px 1px #FFF, -4px -1px 1px #FFF;
padding:.5em 1em;
text-align:center;
margin-bottom:1rem;
border-radius:1rem;
}
#footer-logo ul{
display: flex;
justify-content: center;
width: 75%;
margin:0 auto;
}
#footer-logo ul li {
flex-basis:calc(50% / 6);
max-width:calc(50% / 6);
text-align:center;
margin:0 auto;
}
#footer-logo li a {
display:block
}
#footer-logo svg {
width: 100%;
height: 50px;
vertical-align: top;
fill: #EE001E;
}
#footer-logo li a:hover svg {
transform-origin: center;
transform: scale(1.15);
transition:.2s;
fill:#A10;
}

#footer-menu-wrapper > ul a {
position: relative;
white-space: nowrap;
}
#footer-menu-wrapper > ul a:hover {
font-weight:800;
}
#footer-menu-wrapper > ul a:after {
display: block;
position: absolute;
content: '';
width: 0%;
height: 2px;
margin: -3px 0 0;
background-color: #FFF;
transition: all .3s ease-out;
}
#footer-menu-wrapper > ul a:hover:after {width:100%;}


#footer-bg1 {
 background: linear-gradient(90deg, rgba(240, 240, 240, .3) 37.5%, rgba(255, 23, 23, 1) 37.5%);
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
z-index: 0;
display:block;
}



/* Footer Wave Animation */
.waves {
padding-top:20px;
    position: relative;
    width: 100%;
    height: 10vh;
    min-height: 100px;
    max-height: 150px;
    vertical-align:bottom;
    z-index: 1;
}
.parallax > use {
  animation: move-forever 25s cubic-bezier(.55,.5,.45,.5) infinite;
}
.parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}
.parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}
.parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}
.parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
}
@keyframes move-forever {
  0% {
   transform: translate3d(-90px,0,0);
  }
  100% { 
    transform: translate3d(85px,0,0);
  }
}




/* コピーライト */
#copyright {
color:#111;
width:100%;
text-align:center;
flex-basis:100%;
display:flex;
align-items: center;
justify-content: center;
position:relative;
height:10vh;
background:#FFF;
z-index:2;
}
#copyright p{font-size: 1.2rem; margin-bottom:0; color:#EE001E;}

/*breadcrumb*/
.breadcrumb {background:#DDD; font-size:1.4rem; padding:.5rem 0;}
.breadcrumb ol { max-width:1280px; width:92%; margin:auto; display:flex; flex-wrap:wrap;}
.breadcrumb li a { display:block; }
.breadcrumb li a:hover { text-decoration:underline; }
.breadcrumb li a:after { content:"\02192"; display:inline-block; padding:0 .5rem; }


/*body*/
#body {
position:relative;
background:#eee;
}
#body:before{
display: block;
position: absolute;
inset: 0;
padding:0;
width: 100%;
height: 24vw;
background-color: #f7f7f7;
z-index:0;
content: "";
background-image:url("../img/scene.svg");
background-repeat:repeat-x;
background-size:40%;
background-position:50% 10px;
vertical-align:top;
}
#body .header { max-width:1280px; width:92%; margin:0 auto; position: relative; z-index:1; display:flex;align-items: center; padding:3rem 0; top:12vw;}
#body .header h1 {font-size:3vw; line-height:1; color:#EE001E;}
#body .header h1 a { color:#EE001E; line-height:1; padding:1rem 0 0; vertical-align:bottom;}
#body .header p {color:#FFF; display:inline-block; margin:0 0 0 12px; font-size:1.4rem; border-top:2px #fff solid; border-bottom:2px #fff solid;}

#body #mainvisual {
position: relative;
margin: 0 auto;
border-radius: 2rem;
overflow: hidden;
top:12vw;
width:92%;
max-width:1280px;
z-index:1;
}
#body #mainvisual .mv-img{
position: relative;
top:0;
left:o;
}
#body #mainvisual .mv-img img{
object-fit: cover;
}
#mainvisual #topmv-bg1 {
background: #EE001E;
width: 48%;
height: 45%;
position: absolute;
top: 0;
left: 0;
z-index: 0;
display:block;
transform: skewX(340deg) rotate(340deg) translateX(0%) translateY(15%) !important;
}
#mainvisual #topmv-bg2 {
background: #EE001E;
width: 48%;
height: 75%;
position: absolute;
top: 0;
left: 0;
z-index: 0;
display:block;
transform: skewX(340deg) rotate(340deg) translateX(100%) translateY(68%) !important;
}
#mainvisual #topmv-bg3 {
width: 35%;
height: 100%;
position: absolute;
top: 10%;
left: 0%;
z-index: 0;
display: block;
transform: translateX(20%) !important;
}
#mainvisual #topmv-bg4 {
width: 65%;
max-width:800px;
height: auto;
max-height:810px;
position: absolute;
bottom: 0;
left: 50%;
z-index: 1;
display:block;
transform: translateX(-50%) !important;
overflow-y: hidden;
}
#body #mainvisual .mv-name p {
font-size:6vw;
text-align:center;
}
#body #mainvisual .mv-name{
position: absolute;
top: 50%;
right: 28%;
width: 17%;
transform: translateY(-50%);
}
#page-contents{
width:92%;
margin: 0 auto;
max-width: 1280px;
position: relative;
top:12vw;
padding-bottom:14.5vw;
}
#body .section-header {
margin-bottom:2rem;
}
.single-common #page-contents{
margin-top:3rem;
}




/* page > reports */
#body.page-reports #page-contents {
width:92%;
max-width:1280px;
justify-content: space-between;
padding-bottom:30px;
}

#page-contents .section {
/* flex-basis:calc((100% - 30px) / 2); */
flex-basis:100%;
padding:4rem 3rem 3rem;
background-color:#FFF;
border-radius:2rem;
}
#page-contents .section .section-header p {
width:100%;
text-align:center;
}

#body.page-reports #blog a {display:block; padding:.5rem 1rem;background: #f8f8f8;position: relative;}
#body.page-reports #blog a:hover {background-color:#EE001E; color:#FFF;font-weight: 800;}
#body.page-reports #blog a::after {
content: "\300B";
position: absolute;
top:0;
right: 0;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
width: 1.5em;
}
#body.page-reports #blog a:hover::after {
right: -5px;
transition: .4s;
}
#body.page-reports #blog li {
margin-bottom: 5px;
}

#body.page-reports #twitter h2 svg,#body.page-reports #facebook h2 svg {
display: inline-block;
position: static;
width: 40px;
height: 40px;
margin-right: 10px;
vertical-align: -5px;
fill: #EE001E;
}

#blog-index .parallax_content {
padding: 0 0 10rem;
}


/*search-result*/
#body.search #article{
width:100%;
}
#article.search .search-result{
background: #FFF;
padding: 2rem3rem;
border-radius: 1.5rem;
margin-bottom: 30px;
}
#article.search li{
background:#FFF;
padding: 2rem 3rem;
border-radius:1.5rem;
margin-bottom:30px;
position:relative;
}
#article.search li:last-child{
margin-bottom:0;
}
#article.search h3 a{
display: inline-block;
position: relative;
color: #EE001E;
}
#article.search h3 a:after {
display: block;
position: absolute;
content: '';
width: 0%;
height: 2px;
margin: 0;
bottom: 0px;
background-color: #EE001E;
transition: all .3s ease-out;
}
#article.search h3 a:hover:after {
width:100%;
}
#article.search p {
font-size:92%;
}
#article.search p:nth-of-type(1) {
margin-bottom:.5rem;
}


/* post > blog */
.layout-2column {
display:flex;
justify-content: space-between;
align-items: flex-start;
}
#article {
position: relative;
z-index:1;
flex-basis:65%;
width:65%;
font-size:1.8rem;
}
#page-contents.layout-1column #article {
position: relative;
z-index:1;
flex-basis:100%;
width:100%;
font-size:1.8rem;
}
#article #post {
background:#FFF;
padding:3rem;
border-radius:2rem;
}
#article #post .title a{
display: inline-block;
transform-origin: top left;
transform: scale(0.9, 1);
width: 115%;
letter-spacing:-2px;
color:#EE001E;
line-height:1.2;
}
#article #post .postdate {
position:relative;
font-size:1.2rem;
background:#EE001E;
color:#FFF;
text-align:center;
margin:0 auto 2.5rem;
width:15em;
border-radius:3px;
}
#article #post .postdate::before {
content:""; position:absolute;
height:6px;
width:6px;
border-top:2px #FFF solid;
border-left:2px #FFF solid;
border-radius:3px 0 0 0;
top:2px; left:2px;
}
#article #post .postdate::after {
content:""; position:absolute;
height:6px;
width:6px;
border-bottom:2px #FFF solid;
border-right:2px #FFF solid;
border-radius:0 0 3px 0 ;
bottom:2px;
right:2px;
}
#article #post img {
margin:0 2rem  2rem 2rem;
min-width:240px;
}
#article #post.leafret img {
margin:0;
}
#article #post img.alinenone {
margin:0 auto;
}
#article #post img.size-large {
width:100%;
margin:0 0 2rem;
}


#post.leafret a.topdf {
display:block;
background: #FFF;
border:2px #EE001E solid;
color:#EE001E;
text-align:center;
border-radius:1rem;
padding:1rem;
font-size:125%;
}
#post.leafret p a:hover {
background: #EE001E;
border:2px #EE001E solid;
color:#FFF;
}


#article.archive li{
background:#FFF;
padding: 3rem 2rem 3rem 5rem;
border-radius:1.5rem;
margin-bottom:30px;
position:relative;
display:flex;
align-items: center;
}
#article.archive li:last-child{
margin-bottom:0;
}
#article.archive li:before{
position: absolute;
background: #EE001E;
content: "";
display: block;
width: 8px;
height: 80%;
top: 50%;
left: 2rem;
transform: translateY(-50%);
}
#article.archive h3 a{
display: inline-block;
position: relative;
color: #EE001E;
line-height:1.4;
}
#article.archive h3 a:after {
display: block;
position: absolute;
content: '';
width: 0%;
height: 2px;
margin: 0;
bottom: 0px;
background-color: #EE001E;
transition: all .3s ease-out;
}
#article.archive h3 a:hover:after {
width:100%;
}
#article.archive p {
font-size:92%;
}
#article.archive p:nth-of-type(1) {
font-size: 1.2rem;
background: #EE001E;
padding-left:1rem;
color: #FFF;
margin-bottom: 1rem;
}
#article.archive p.img {
max-width:150px;
flex-basis:30%;
margin:0 2.5% 0 0;
background: transparent;
padding:0;
}
#article.archive div {
flex-basis:100%;
}
.category-leaflet #article.archive{
width:100%;
}
.category-leaflet #article.archive ul{
display:flex;
flex-wrap:wrap;
justify-content: start;
}
.category-leaflet #article.archive li{
background:transparent;
padding: 0;
border-radius:0;
margin-bottom:25px;
margin-right:25px;
position:relative;
flex-basis:calc((100% - 75px) / 4);
}
.category-leaflet #article.archive li:nth-of-type(4n){
margin-right:0;
}
.category-leaflet #article.archive li:before{
content: none;
}
.category-leaflet #article.archive li a{
display:block;
background:#fff;
border-radius:1rem;
overflow:hidden;
transition:.5s all;
}
.category-leaflet #article.archive li a p.image{
overflow:hidden;
}
.category-leaflet #article.archive li a:hover{
color:#EE001E;
}
.category-leaflet #article.archive li a img{
transition:.5s all;
}
.category-leaflet #article.archive li a:hover img{
transform:scale(1.2,1.2);
}
.category-leaflet #article.archive li h3{
line-height:1.3;
position: relative;
margin-bottom:.5rem;
padding: 0 1.5rem;
}
.category-leaflet #article.archive li h3:after {
display: block;
position: absolute;
content: '';
width: 0%;
height: 2px;
margin: 0;
bottom: -2px;
background-color: #EE001E;
transition: all .3s ease-out;
}
.category-leaflet #article.archive li a:hover h3:after {
width: 100%;
}
.category-leaflet #article.archive li p:nth-of-type(2) {
padding: 0 1.5rem 1.5rem;
}


#sidebar {
flex-basis: calc(35% - 30px);
width: calc(35% - 30px);
padding: 3rem 1.5rem;
background:#FFF;
border-radius:2rem;
border-top:2rem #EE001E solid;
border-bottom:2rem #EE001E solid;
}
#sidebar h3 {
background: none;
font-size: 16px;
letter-spacing: 2px;
display: inline-block;
position: relative;
width: 100%;
padding: 0;
text-align: center;
color: #EE001E;
margin-top:3rem;
}
#sidebar h3::before,
#sidebar h3::after {
content: "";
position: absolute;
top: 50%;
width: 28%;
border-top: 3px solid #EE001E;
}
#sidebar h3::before {
left: 0;
}
#sidebar h3::after {
right: 0;
}
#sidebar ul.wp-block-latest-posts li a{
line-height:1.1;
}
#sidebar ul.wp-block-latest-posts li {
padding:.5rem 0;
}
#sidebar ul.wp-block-latest-posts li:nth-of-type(even) {
background: #f2f9ff;
}
#sidebar a.tag-cloud-link{
display:inline-block;
margin:0 1rem;
white-space:nowrap;
}
#sidebar #profile .avatar {
width:75%;
margin:auto;
max-width:300px;
}
#sidebar #profile h2 {
font-size:1.8rem;
padding:1rem 0;
text-align:center;
}
#sidebar #profile {
font-size:1.4rem;
width:100%;
}
#sidebar #profile table td:nth-of-type(1) {
white-space:nowrap;
background:#eee;
padding:.5rem 1rem;
text-align:center;
}
#sidebar #profile table td:nth-of-type(2) {
padding-left:1rem;
}
#sidebar #profile table td:nth-of-type(2) a {
display: inline-block;
color:#EE001E;
margin-right: 10px;
width: 21px;
height: 21px;
vertical-align:middle;
}
#sidebar #profile svg {
position: static;
width: 100%;
height: 100%;
fill: #EE001E;
}

/*pagenation*/
.pagination {
margin:50px auto 0;
}
.nav-links{
display:flex;
justify-content:center;
align-items: center;
font-size:125%;
font-weight:800;
}
.nav-links a,
.nav-links span {
display:block;
background:#FFF;
text-align:center;
margin:0 .25em;
padding:0 .5em;
border-radius:50%;
}
.nav-links span.current{
background:#EE001E;
color:#FFF;
}
.nav-links a:hover{
color:#EE001E;
}
.nav-links a.prev,
.nav-links a.next {
font-size:80%;
border-radius:1.6rem;
padding:0.3rem 1.5rem;
position:relative;
}



#sidebar form {display:flex; flex-wrap:wrap;justify-content: space-between;}
#sidebar label {width:100%;}
.wp-block-search__inside-wrapper {width:100%;display:flex; justify-content: space-between;}
#sidebar input {width:78%;}
#sidebar button { display:block;width:18%; background:#EE001E; color:#FFF; cursor:pointer;}
#sidebar button svg { fill: #FFF;}
#sidebar .wp-block-search {
border: solid 1px #aaa;
width: 100%;
position: relative;
transition: all 0.3s ease-out;
margin-top:5px;
}
#sidebar .wp-block-search label {
position: absolute;
left: 10px;
top: 50%;
transform: translateY(-50%);
display: block;
margin: 0;
font-weight: 500;
z-index: 1;
color: #aaa;
font-size: 1.6rem;
line-height: 1;
}
#sidebar .wp-block-search input {
background-color: transparent;
padding: .5rem;
border: none;
border-radius: 0;
box-shadow: none;
height: auto;
position: relative;
z-index: 2;
font-size: 18px;
}
.wp-block-archives-list {
display:flex;
flex-wrap:wrap;
}
.wp-block-archives-list li {
flex-basis:33.3%;
text-align:center;
}
.wp-block-archives-list li a {
font-size:120%;
}


/*前後5記事を表示*/
.prevnext10 {margin-top:2em;}
.prevnext10 li { margin-top:10px;font-size:1.3rem; background:#FFF; padding:1rem 2rem; border-radius:10px;}
.prevnext10 li a {display:block;}
.prevnext10 li a span.title {font-size:1.6rem; display:block;}
.currentPost {background:#EE001E; color:#FFF; padding:1rem 2rem; border-radius:10px;}
.newer,.older { font-size:1.2rem; color:#EE001E; text-align:center; margin:0;}
.newer {margin-top:10px;}

/*page-policy*/
#policy-contents {
max-width:1280px;
padding:0 6rem;
margin:0 auto;
position: relative;
z-index:1;
}

#policy-contents .description {
background:#f5f5f5;
padding:3rem 4rem;
font-size:2.4rem;
}
#policy-contents .content {
background:#f5f5f5;
padding:3rem 4rem;
display:flex;
flex-wrap:wrap;
}
#policy-contents .content .no {
font:900 7rem/1 "Arial",sans-serif;
letter-spacing:-.5rem;
color:#EE001E;
width:50%;
}
#policy-contents .content .header {
font-size:2.4rem;
color:#EE001E;
width:50%;
margin-bottom:1rem;
}
#policy-contents .content .body {
font-size:1.6rem;
width:50%;
}
#policy-contents .content .image {
background:#fff;
width:50%;
}


/*privacy-policy*/
#privacy-policy.section {
background:rgba(255,255,255,.6);
padding:5rem;
max-width:1280px;
margin:0 auto;
line-height:2;
}
#privacy-policy .section-header p{
font-size:125%;
text-align:left !important;
}
#privacy-policy h3{
color:#EE001E;
margin-top:.15em;
margin-bottom:.15em;
}
#privacy-policy p {
margin-bottom:1.5em;
}


/*page-top*/
#page-top {
display:none;
position: fixed;
z-index:10;
right: 15px;
bottom: 15px;
background: #EE001E;
padding: 10px;
border-radius: 50%;
box-shadow: 0 0 5px rgba(0,0,0,.5);
width:50px;
height:50px;
}
#page-top:hover {
background: #fff;
}
#page-top span {
position: relative;
display:block;
opacity: 0;
animation-iteration-count: infinite;
animation-duration: 2.0s;
animation-name: scroll;
}
#page-top span::before,#page-top span::after{
position: absolute;
display:block;
content: "";
border-bottom:3px solid #FFF;
left:0;
top:50%;
width:50%;
transform: rotate(-45deg) translateX(25%);
}
#page-top:hover span::before,#page-top:hover span::after {
border-color: #EE001E;
}
#page-top span::after {
left:auto;
right:0;
transform: rotate(45deg) translateX(-25%);
}
#page-top span:nth-of-type(1) { animation-delay:.5s; top: 10px; }
#page-top span:nth-of-type(2) { animation-delay: .2s; top: 20px; }


/*share*/
#share {
background:#EE001E;
display:flex;
justify-content:center;
align-items: center;
padding:1rem 0;
margin:0;
}
#share p {
font-weight:800;
color:#FFF;
margin:0 2rem 0 0;
}
#share ul {
display:flex;
}
#share li {
margin:0 2%;
}
#share li a {
display:block;
background:#FFF;
color:#FFF;
padding:.2rem 1rem;
border-radius:.5rem;
font-size:1.2rem;
font-weight:800;
white-space: nowrap;
}
#share svg {
width: 1.3rem;
height: 1.3rem;
vertical-align:-1.5px;
margin-right:5px;
fill:#fff;
}
#share li.x a{
background:#111111;
}
#share li.facebook a{
background:#3b5998;
}
#share li.line a{
background:#00B900;
}
#share a#copyhref{
background:#FFF;
color:#EE001E;
}
#share.layout-inpost {
display:block;
max-width:auto;
margin:0 auto;
padding:1rem 1rem 2rem;
}
#share.layout-inpost p {
text-align: center;
width: 100%;
flex-basis: 100%;
margin: 0;
}
#share.layout-inpost ul {
width: 100%;
flex-basis: 100%;
justify-content: center;
}
#share.layout-inpost li a {
display: inline-block;
font-size: 1.3rem;
padding: 2px 8px;
width: 100%;
margin: 0;
}



/*follow*/
#follow {
background:#f5f5f5;
display:flex;
justify-content:center;
align-items: center;
padding:1rem 0;
}
#follow p {
font-weight:800;
line-height:1.3;
color:#EE001E;
margin: 0 2rem 0 0;
}
#follow ul {
display:flex;
}
#follow li {
margin-right:10px;
}
#follow li a {
display:block;
color:#fff;
padding:0.2rem 1rem;
border-radius:.5rem;
font-size:1.2rem;
font-weight:800;
white-space:nowrap;
}
#follow svg {
width: 1.3rem;
height: 1.3rem;
vertical-align:-1.5px;
margin-right:5px;
fill:#fff;
}
#follow li.x a{
background:#111111;
}
#follow li.facebook a{
background:#3b5998;
}
#follow li.youtube a {
background: #c4302b;
}
#follow li.line a{
background:#00B900;
}
#follow li.instagram a{
background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);
}
#follow li.tictok a{
background: linear-gradient(115deg, rgba(0,0,0,1) 10%, rgba(0,242,234,1) 10%, rgba(0,194,187,1) 40%, rgba(0,0,0,1) 40%, rgba(0,0,0,1) 60%, rgba(221,0,69,1) 60%, rgba(255,0,80,1) 90%, rgba(0,0,0,1) 90%);
}
#follow li.litlink a{
background: rgb(148, 148, 249);
}
#follow.home {
display:flex;
justify-content:center;
align-content:center;
flex-wrap:wrap;
width:100%;
margin:0 auto;
background: #EE001E;
margin-top: 0;
padding: 2rem;
border-radius: 0;
border: none;
}
#follow.home p {
flex-basis:25%;
padding:0;
text-align:center;
line-height:1.4;
border:1px #fff solid;
margin-right:3%;
}
#follow.home span {
position: absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
white-space:nowrap;
}
#follow.home ul {
flex-basis:50%;
padding:0;
}

/*modal-window*/
.modal-open{ cursor: pointer; text-decoration:underline;}
.modal-container{
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
text-align: center;
background: rgba(0,0,0,50%);
padding: 40px 20px;
overflow: auto;
opacity: 0;
visibility: hidden;
transition: .3s;
box-sizing: border-box;
z-index:101;
}
.modal-container:before{
content: "";
display: inline-block;
vertical-align: middle;
height: 100%;
}
.modal-container.active{
opacity: 1;
visibility: visible;
}
.modal-body{
position: relative;
display: inline-block;
vertical-align: middle;
max-width: 500px;
width: 90%;
}
.modal-close{
position: absolute;
display: flex;
align-items: center;
justify-content: center;
top: -40px;
right: -40px;
width: 40px;
height: 40px;
font-size: 40px;
color: #fff;
cursor: pointer;
}
.modal-content{
background: #fff;
text-align: left;
padding: 30px;
height: 525px;
}
.modal-content iframe{ width: 100%; border: none; height: 100%;}


