@charset "UTF-8";
html {
  visibility: hidden; }

html.wf-active {
  visibility: visible; }

body {
  background: #fff;
  color: #383838;
  margin: 0 auto;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.57;
  letter-spacing: 0.05em;
  text-align: justify; }

a:hover,
a:active,
a:focus {
  opacity: 0.7;
  transition-duration: .3s; }

h2, h3, h4 {
  line-height: 1; }

main {
  overflow: hidden; }

a {
  color: #191919; }

.l-header {
  padding: 12px 0 0;
  position: absolute; }

.l-footer {
  text-align: center;
  width: 90.1333333333%;
  max-width: 400px;
  margin: 0 auto; }

.l-container {
  width: 90.1333333333%;
  max-width: 655px;
  margin: 0 auto 78px; }

.l-bottom--none {
  margin: 0 auto 0; }

.l-bottom--middle {
  margin: 0 auto 94px;
  margin: 0 auto max(94px,17%); }

.l-container--all,
.l-container--allwide {
  width: 100%;
  max-width: inherit; }

#header {
  width: 100%;
  z-index: 9999; }

.header__logo {
  width: 170px;
  margin: 0 auto; }

#logo {
  fill: #fff; }

.txt-eng {
  font-family: "Tenor Sans", "Helvetica Neue", arial, sans-serif;
  font-weight: 400; }

.txt-mc {
  color: #E4051B; }

.txt-white {
  color: #fff; }

.txt-olive{
	color: #526416; }

.txt-skyblue{
	color: #71A6D8;
}

.txt-pink{
	color: #D83086;
}

.bg-olive{
	background-color: #526416;
}

.bg-skyblue{
	background-color: #71A6D8;
}

.bg-pink{
	color: #D83086;
}

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

.p-mainVisual {
  height: 505px; }
 
.slider {
 overflow: hidden;
 width: 100vw;
 height: 70vh;
 position: relative;
}
 
.slide {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 background-size: cover;
 background-position: center;
 animation: slider 22.799999999999997s infinite;
}

.slider .slide:nth-child(1) {
    background: url("../image/TOP_main_02.jpg") no-repeat center center/cover;
   animation-delay: 0s;
}

.slider .slide:nth-child(2) {
   background: url("../image/TOP_main_01.jpg") no-repeat center center/cover;
   animation-delay: -3.7999999999999994s;
}

.slider .slide:nth-child(3) {
    background: url("../image/TOP_main_03.jpg") no-repeat center center/cover;
   animation-delay: -7.599999999999999s;
}

.slider .slide:nth-child(4) {
    background: url("../image/TOP_main_04.jpg") no-repeat center center/cover;
   animation-delay: -11.399999999999999s;
}

.slider .slide:nth-child(5) {
    background: url("../image/TOP_main_05.jpg") no-repeat center center/cover;
   animation-delay: -15.199999999999998s;
}

.slider .slide:nth-child(6) {
    background: url("../image/TOP_main_07.jpg") no-repeat center center/cover;
   animation-delay: -18.999999999999996s;
}

@keyframes slider {
 0%, 13%, 100% {
   transform: translateX(0);
   animation-timing-function: ease;
 }
 17% {
   transform: translateX(-100%);
   animation-timing-function: step-end;
 }
 96% {
   transform: translateX(100%);
   animation-timing-function: ease;
 }
}

.p-message__title {
  font-size: calc(3.625rem + ((1vw - 4.15px) * 12.2353));
  text-align: center;
  margin: 0 auto 6.82px;
  font-weight: 400;
  mix-blend-mode: difference;
  z-index: 99;}

.p-message__lead {
  line-height: 1.6875;
  letter-spacing: 0.12em;
  font-size: calc(1rem + ((1vw - 3.75px) * 1.4433));
  margin-bottom: 46.5px; }

.p-message__txt {
  line-height: 1.7142857143;
  margin: 0 0 40px;}

.p-message {
  margin-top: calc((3.625rem + ((1vw - 3.75px) * 4.5977)) * 46 / 58 / 2 * -1);
  margin-bottom: 73px; }

.p-middleVisual__item {
  max-width: none; }

.p-middleVisual__img {
  width: 50vw;
  object-fit: cover; }

.p-middleVisual {
  width: 100%; }

.p-middleVisual__wrapper {
  width: 200%;
  position: relative; }

.p-middleVisual__wrapper li {
  position: absolute;
  top: 0;
  left: 100vw; }

.box_youtube{
	position: relative;
	width: 100%;
	height:0;
	padding-top: 56.25%;
}
.box_youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.bg-red{
	background-color: #EB2727;
}

.i-container{
	padding: 80px 0 10px;
	margin-bottom: 60px;
}

.jp-title{
	letter-spacing: 0.15em ;
	font-size: calc(1.75rem + ((1vw - 5.75px) * 1.8824));
	line-height: 1.5;
	margin-bottom: max(39.2857142857px,2.508666302vw);
}
.jp-title-02{
	letter-spacing: 0.15em ;
	font-size: calc(1.75rem + ((1vw - 8.9px) * 1.8824));
	line-height: 1.5;
	margin-bottom: max(39.2857142857px,2.508666302vw);
}

.subtitle{
	font-size: calc(1rem + ((1vw - 3.75px) * 1.4433));
	line-height: 2;
	letter-spacing: 0.12em;
}
.ig-wrapper{
	display: block;
}
.ig-lead{
	margin-bottom: 60px;
}
.ig-pic{
	margin-bottom: 15px;
}
.ig-contents{
	width: 100%;
	margin-bottom: 60px;
}
.index{
	padding-bottom: 50px;
}
.article-index{
	padding: 27px 0;
	border-bottom: solid 2px #EB2727;
}
.article-index-inside{
	display: flex;
    align-items: center;
    justify-content: space-between;
}
.txt-index{
	line-height: 1.5;
	width: 80%;
	flex-grow: 2;
	margin-right: 60px;
}
.txt-index-l{
	font-size: calc(1rem + ((1vw - 3.75px) * 1.2));
}
.icon-row{
	padding-right: 10px;
	font-size: 30px;
}
.icon-ver{
	font-size: 40px;
	padding-bottom: 15px;
}
.arrow{
	position: absolute;
	right: 0;
}
.img-arrow{
	width: 85%;
}
.topic-all{
	width: 90.1333333333%;
	margin: 0 auto 30px;
}
.subtitle02{
	letter-spacing: 0.2em;
	}
	.topic-s-title{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.topic-s-txt{
		flex-grow: 2;
	}
.icon-topic{
	font-size: 28px;
	margin: 0 10px 12px 0;
}
.bg_color{
	padding: 20px 0;
}
.profile_pic{
	padding-right: 15px;
	width: 50%;
}
.profile_name{
	font-size: 1.3rem;
	margin-bottom: 6px;
}
.profile{
    display: flex;
    align-items: center;
    justify-content: space-between; 
	margin-bottom: 35px;
}
.profile_txt{
	width: 80%;
}


@media screen and (max-width: 859px) {
  .p-middleVisual__wrapper li:nth-of-type(1) {
    -webkit-animation: loop 40s -20s linear infinite;
    -moz-animation: loop 40s -20s linear infinite;
    animation: loop 40s -20s linear infinite; }

  .p-middleVisual__wrapper li:nth-of-type(2) {
    -webkit-animation: loop 40s -10s linear infinite;
    -moz-animation: loop 40s -10s linear infinite;
    animation: loop 40s -10s linear infinite; }

  .p-middleVisual__wrapper li:nth-of-type(3) {
    -webkit-animation: loop 40s -30s linear infinite;
    -moz-animation: loop 40s -30s linear infinite;
    animation: loop 40s -30s linear infinite; }

  .p-middleVisual__wrapper li:nth-of-type(4) {
    -webkit-animation: loop 40s -40s linear infinite;
    -moz-animation: loop 40s -40s linear infinite;
    animation: loop 40s -40s linear infinite; } }
@keyframes loop {
  0% {
    transform: translateX(0%); }
  to {
    transform: translateX(-400%); } }
.p-location {
  margin-top: calc(100vw * 325 / 375 / 2 + 74px + 78px); }

.p-location__list {
  margin-top: 2.5px; }

.p-location__title {
  line-height: 1.4615384615;
  font-size: 13px;
  font-weight: 600;
  font-style: italic;
  vertical-align: bottom;
  letter-spacing: 0; }

.p-location__detail {
  line-height: 1.4615384615;
  font-size: 13px;
  padding-left: 108px;
  margin-top: -21.5px;
  margin-bottom: 17.5px;
  letter-spacing: 0.05em; }

.p-location__img {
  margin-bottom: 15px;
  margin-bottom: max(15px, 4%); }

.c-title {
  line-height: 1;
  font-size: calc(1.75rem + ((1vw - 3.75px) * 1.8824));
  margin-bottom: 34.12px;
  margin-bottom: max(34.12px, 6%);
  letter-spacing: 0;
  font-weight: 700; }

.p-post__img {
  width: 100%; }

.p-post__img img {
  height: 100vw;
  max-height: 500px;
  width: 100%;
  object-position: top;
  object-fit: cover;
  margin: 0 auto; }

.p-post__txt {
  width: 90.1333333333%;
  max-width: 655px;
  margin: 10px auto 52px;
  margin:10px auto max(52px, 7.5%);
  letter-spacing: 0.12em; }

.p-post__txt__title {
  font-weight: 500;
  font-size: 19px;
  line-height: 1;
  padding-top: 28.3px;
  text-align: center;
  width: 225.7px;
  height: 66.42px;
  position: relative;
  background: url("../image/ribbon.svg") no-repeat center center/contain;
  margin-bottom: 15px;
  letter-spacing: 0.12em;
  padding-right: 5.2px; }

.p-post::nth-of-child(2) .p-post__txt__title {
  padding-right: 7.7px; }

.p-post::nth-of-child(3) .p-post__txt__title {
  padding-right: 6.7px; }

.p-post__txt__lead {
  font-size: 16px;
  line-height: 1.375;
  margin-bottom: 12px;
  letter-spacing: 0.12em; }

.p-cta__title {
  margin-bottom: 32px; }

.p-post__txt__body,
.p-cta__exp {
  font-size: 14px;
  line-height: 1.5714285714;
  letter-spacing: 0.05em; }

.p-cta__exp {
  max-width: 338px;
  margin: 0 auto 11px; }

.p-cta__app {
  display: flex;
  justify-content: center;
  margin-bottom: 31px; }

.p-cta__app__item {
  max-width: 49%;
  width: 162px;
  height: 60px;
  background-color: #EA4D37;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 15px; }

.p-cta__app__item:last-of-type {
  margin-right: 0; }

.p-cta__app__item div {
  max-width: 95.0617284%;
  width: 154px;
  height: 52px;
  border: 1px solid #fff;
  line-height: 1;
  text-align: center;
  letter-spacing: 0; }

.p-cta__app__item div p {
  font-size: 20px;
  margin-top: 14px;
  margin-bottom: -3.2px;
  font-weight: 600; }

.p-cta__app__item div span {
  font-weight: 300;
  font-size: 11px; }

.p-cta__link:hover {
  background-color: rgba(235, 39, 39, 0.2); }

.p-cta__link {
  width: 338px;
  height: 50px;
  border-radius: 31.5px;
  border: 1px solid #EB2727;
  display: flex;
  align-items: center;
  margin: 0 auto 15.7px;
  max-width: 100%; }

.p-cta__link p {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-left: min(33px, 8.8vw);
  align-items: center;
  font-size: min(4vw, 14px);
  letter-spacing: 0.12em; }

.p-cta__link p::after {
  display: block;
  content: "";
  height: 20px;
  width: 22px;
  background: url("../image/arrow_RED.svg") no-repeat center center/contain;
  margin-right: 13px;
  transform: rotate(-90deg)}

.p-cta__sns {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;}

.p-cta__sns a {
  margin-right: 28.5px; }

.p-cta__sns a:last-of-type {
  margin-right: 0; }

.p-cta__sns a i {
  font-size: 35px; }

.copyright {
  display: block;
  font-size: 9px;
  line-height: 1;
  margin: 35px auto 17px;
  letter-spacing: 0; }

@media screen and (min-width: 860px) {
  body {
    font-size: 18px;
    line-height: 1.8333333333; }

  span {
    display: inline-block; }

  .l-header {
    padding: 12px 20px 0;
    padding: max(12px, 0.796812749%) max(20px, 1.3280212483%) 0; }

  .l-footer {
    width: 50%;
    min-width: 500px; }

  .l-container {
    width: 65.0730411687%;
    max-width: none;
    min-width: 712px; }

  .l-container--all {
    width: 100%;
    max-width: inherit; }

  .l-container--wide {
    width: 90.1333333333%;
    padding: 0 min(calc(191 / 646 * 100vw - 191 / 646 * 1506px + 191px), calc(52 / 414 * 100vw - 52 / 414 * 1506px + 191px)) 0;
    margin: 0 auto max(140px,9.296148738vw); }

  .l-container--allwide {
    width: 90.1333333333%;
    padding: 0 min(calc(65 / 646 * 100vw - 65 / 646 * 1506px + 65px), calc(18 / 414 * 100vw - 18 / 414 * 1506px + 65px)) 0;
    max-width: 1620px; }
	
  .container--add{
	width: 90.1333333333%;
    padding: 0 min(calc(65 / 646 * 100vw - 65 / 646 * 1506px + 65px), calc(18 / 414 * 100vw - 18 / 414 * 1506px + 65px)) 0;
    max-width: 1620px;
	}

  .l-container--cta {
    width: 48.87118194%;
    min-width: 514px;
    margin-bottom: max(80px,7.96812749vw); }

  .l-bottom--middlePc {
    margin-bottom: max(181px,12.0185923vw); }

  .header__logo {
    width: max(255.79px, 16.98489583%);
    margin: 0 0 0 auto; }

  .p-mainVisual {
    background: url(../image/topmain_pc.jpg) no-repeat center center/cover;
    width: 100%;
    height: 41.500664vw;
    min-height: 505px; }

  .p-message__title {
    font-size: max(110px,5.729166666vw);
    margin-bottom: max(6.4285714286px,-1.2077582526vw); }

  .p-message__lead {
    font-size: max(23px,1.14583333vw);
    margin-bottom: max(51px,2.39043825vw); }

  .p-message__txt {
    letter-spacing: 0.06em;
    line-height: 1.8333333333; }

  .shiritaikoto {
    width: -2.2719109193; }

  .shiritaikoto {
    width: -43.6206896552; }

  .shiritaikoto {
    width: 0.0049800797px; }

  .p-message {
    margin-top: min(-43.6206896552px,-2.2719109193vw);
    margin-bottom: max(85.5px,5.677290835vw); }

  .p-middleVisual__wrapper {
    width: 100%;
    position: relative;
    display: flex; }

  .p-middleVisual__wrapper li {
    position: initial;
    top: auto;
    left: auto; }

  .p-middleVisual {
    margin-bottom: max(90px,5.976095618vw); }

  .p-location,
  .p-post,
  .ig-wrapper,
  .pr-wrapper{
    display: flex;
    align-items: center;
    justify-content: space-between; }
	
	.ig-wrapper{
		margin-bottom: 60px;
	}
	
	.profile{
		width: 45%;
	}

  .p-location__img {
    width: 39.28571429%;
    min-width: 376.5px;
    margin-right: max(44px,1.010204082%); }

  .p-location__list {
    width: 50.6122449%;
    margin-bottom: min(-24px,-1.66002656vw); }

  .p-location__exp {
    line-height: 1.1875;
    font-size: 16px;
    letter-spacing: 0; }

  .p-location__title,
  .p-location__detail {
    font-size: clamp(16px,1.195219124vw,18px); }

  .p-location__detail {
    padding-left: max(135px,8.964143426vw);
    margin-top: clamp(-26.8px,-1.779548473vw,-24px);
    margin-bottom: max(24px,1.66002656vw);
    line-height: 1.1875; }

  .p-location__img {
    margin-bottom: 0;
    margin-top: 0; }

  .c-title {
    font-size: max(36px,2.390438247vw);
    margin-bottom: max(39.2857142857px,2.508666302vw); }

  .p-post {
    margin-bottom: max(35px,2.324037185vw); }

  .p-post__img {
    margin-right: max(44px,4.480980276%); }

  .p-post__img img {
    max-width: none;
    height: auto;
    height: max(378px,min(506.7px,28.02124834vw));
    flex-shrink: 0;
    max-height: none; }

  .p-post__txt {
    width: 43.42532468%;
    margin: 0 auto;
    flex-shrink: 0; }

  .shiritaikoto {
    margin-top: 11.625px;
    margin-bottom: 0.7719123506vw; }

  .p-post__txt__title {
    font-size: 22px;
    padding-top: max(34px,6.355140187%);
    padding-bottom: max(23px,4.299065421%);
    height: auto;
    max-height: none;
    width: max(268.5px,50.18691589%);
    display: block;
    padding-right: max(5.2px,0.9719626168%);
    margin-bottom: max(11.625px,0.7719123506vw); }

  .p-post::nth-of-child(2) .p-post__txt__title {
    padding-right: max(7.7px,1.439252336%); }

  .p-post::nth-of-child(3) .p-post__txt__title {
    padding-right: max(7.7px,1.252336449%); }

  .p-post__txt__lead {
    font-size: 18px;
    line-height: 1.375;
    letter-spacing: 0.09em;
    margin-bottom: max(11.9583333333px, 0.4731075699vw);
    font-weight: 700; }

  .p-post__txt__body {
    font-size: clamp(16px,1.195219124vw,18px);
    line-height: 1.8333333333; }

  .p-cta__exp {
    max-width: none;
    text-align: center;
    font-size: 18px;
    line-height: 1.4444444444;
    margin-bottom: max(28.9777777778px,1.7065073042vw); }

  .p-cta__app {
    margin-bottom: max(42px,2.788844622vw); }

  .p-cta__app__item {
    width: max(203.19px,13.49203187vw);
    height: max(75.25px,4.996679947vw); }

  .p-cta__app__item:first-of-type {
    margin-right: max(18.8px,1.248339973vw); }

  .p-cta__app__item div {
    width: max(189.39px,12.57569721vw);
    height: max(63.97px,4.247675963vw); }

  .p-cta__app__item div p {
    font-size: max(24px,1.593625498vw);
    margin-top: max(18.6px,9.821004277%);
    margin-bottom: max(2px,1.056021965%); }

  .p-cta__app__item div span {
    font-size: max(13px,0.8632138114vw);
    margin-bottom: max(7px,0.344505143%);
    display: block; }

  .p-cta__linkWrapper {
    width: 58.31719597%;
    min-width: 425.19px;
    margin: auto; }

  .p-cta__link {
    width: 100%;
    padding-top: 4.2245466453%;
    padding-bottom: 4.0585164278%;
    border-radius: 7.396693243% / 50%;
    margin-bottom: max(20.1px,1.401062417vw);
    height: auto; }

  .p-cta__link p {
    font-size: max(18px,1.195219124vw);
    margin-left: max(41.6px,5.788043478%);
    flex-shrink: 0; }

  .p-cta__link p::after {
    width: max(27.67px,6.50767892%);
    height: auto;
    padding-top: 7.5%;
    flex-shrink: 0;
    margin-right: max(55.6px,7.554347826%); }

  .p-cta__sns a {
    margin-right: max(28.5px, 1.892430279vw); }

  .p-cta__sns a:last-of-type {
    margin-right: 0; }

  .p-cta__sns a i {
    font-size: max(44px,2.921646746vw); }

  .copyright {
    font-size: 13px;
    margin: max(35px,2.302631579vw) px auto 9px; }
	
  .subtitle{
	font-size: max(24px,1.14583333vw);
	}
	
  .txt-index-l{
	font-size: calc(0.5rem + ((1vw - 3.75px) * 1.4433));
    }
	
  .ig-contents{
	width: 45%;
	margin-bottom: 0;
	}
	
	.jp-title, .jp-title-02 {
		font-size: max(35px,1.14583333vw)!important;
	}
	
	.subtitle02{
	letter-spacing: 0.2em;
	font-size: max(18px,1.14583333vw);
	}
	
	.topic-all{
	width: 100%;
	}
	
	.profile_name{
	font-size: 1.8rem;
}
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  * {
    transform: none;
    animation: none;
    animation-name: none !important; } }
