@charset "utf-8";

html,
body {
  margin: 0;
  padding: 0;
}
body {
/*background: #c4da76;*/
background: #103558;
}
.wrapper {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

@media screen and (min-width: 1201px) {
  .wrapper {
    max-width: 1200px;
  }
}

.parallax-section {
  position: relative;
  overflow: hidden;
}

.parallax-bg-single {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 300vh;
  background: url("../images/bg_top.jpg") center 0px / cover no-repeat;
  z-index: 1;
  pointer-events: none;
  will-change: transform, top, left, width;
}

.parallax-bg-single.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
}

.head_area {
  position: relative;
  box-sizing: border-box;
  background: transparent;
}

.parallax-pin-area {
  position: relative;
  z-index: 2;
  background: transparent;
  padding-bottom:80px;
}

.parallax-body {
  position: relative;
  z-index: 2;
  padding: 0 0;
  background: transparent;
}

.inner {
  width: min(90%, 1000px);
  margin-left: auto;
  margin-right: auto;
  padding: 40px 30px;
  background: #bed8d8;
  box-sizing: border-box;
  border-radius: 30px;
  position: relative;
}

.head_inner {
  position: relative;
}

.header_logo {
  width: 100%;
  max-width: 12%;
  position: absolute;
  top: 3%;
  z-index: 3;
  left: 0px;
}
.title01 {
  background-size: 12px 4px;
  background-image: linear-gradient(to right, #fff 6px, transparent 3px);
  background-repeat: repeat-x;
  background-position: left top;
  padding-bottom: 2px;
}
.title01_wrpper {
margin-top:-5em;
z-index: 4;
position: relative;
width:100%;
max-width: 900px;
margin-left:auto;
margin-right:auto;
}
h2.title01 span img {
max-width:600px;
margin-bottom:1em;
margin-left:auto;
margin-right:auto;
padding-top:0.5em;
}
.title02_1 {
max-width:500px;
margin-bottom:1em;
margin-left:auto;
margin-right:auto;
}
.title02_2 {
max-width:140px;
margin-bottom:2em;
margin-left:auto;
margin-right:auto;
}
h2.title02 {
font-size:36px;
}
@media screen and (max-width: 767px) {
.title01_wrpper {
margin-top:-30px;
z-index: 4;
position: relative;
width:100%;
max-width: 80%;
margin-left:auto;
margin-right:auto;
}
h2.title01 span img {
max-width:80%;
margin-bottom:1em;
margin-left:auto;
margin-right:auto;
padding-top:0.5em;
}
.title02_1 {
max-width:70%;
margin-bottom:1em;
margin-left:auto;
margin-right:auto;
}
.title02_2 {
max-width:30%;
margin-bottom:0.4em;
margin-left:auto;
margin-right:auto;
}
.title01 {
  background-size: 12px 2px;
  background-image: linear-gradient(to right, #fff 6px, transparent 3px);
  background-repeat: repeat-x;
  background-position: left top;
  padding-bottom: 1px;
}
h2.title02 {
font-size:4vw;
}
}
.head01 {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}

.head02 {
  width: 100%;
  max-width: 70%;
  margin: 0 auto;
}

.head03 {
  width: 100%;
  max-width: 45%;
  margin: 0 auto;
}

.head04 {
  width: 100%;
  max-width: 16%;
  margin: 0 auto;
  position: absolute;
  top: 24%;
  right: 0px;
}
.head05_wrap {
  width: 100%;
  max-width: 36%;
  position: absolute;
  top: 28%;
  right: -50px;
  animation: floatX 7.3s ease-in-out infinite;
}

.head05 {
  width: 100%;
  animation:
    floatY 5.8s ease-in-out infinite,
    floatRotate 8.7s ease-in-out infinite;
  will-change: transform;
}

.head05 img {
  display: block;
  width: 100%;
  height: auto;
}

.head06 {
  width: 100%;
  max-width: 60%;
  margin: 0 auto;
  position: absolute;
  top: 74%;
  left: 4%;
}


.head07_wrap {
  position: absolute;
  left: 0;
  top: calc(74% + 8%);
  z-index: 5;
  width: 100%;
  pointer-events: none;
}

.head07_move {
  position: absolute;
  left: -30%;
  top: 0;
  width: 100%;
  max-width: 30%;
  offset-distance: 0%;
  offset-rotate: 0deg;
  will-change: offset-distance;
}

.head07_move img {
  display: block;
  width: 100%;
  height: auto;
}

.head07_move.is-run {
  animation: uniOneMove 5s ease-out forwards;
}

.head07_inner {
  transform-origin: center center;
  will-change: transform;
}

.head07_inner.is-wobble {
  animation: uniWobble 0.6s ease-in-out;
}

@keyframes uniOneMove {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}

@keyframes uniWobble {
  0%   { transform: translate(0px, 0px) rotate(0deg); }
  25%  { transform: translate(2px, -1px) rotate(0.4deg); }
  50%  { transform: translate(-2px, 1px) rotate(-0.4deg); }
  75%  { transform: translate(1px, -1px) rotate(0.3deg); }
  100% { transform: translate(0px, 0px) rotate(0deg); }
}

.head08 {
  width: 100%;
  max-width: 70%;
  margin: 0 auto;
  margin-top: 68%;
}

@keyframes uniOneMove {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}

/* 2秒待ってから細かく右往左往 */
@keyframes uniHoverWobble {
  0%   { transform: translate(0px, 0px) rotate(0deg); }
  12%  { transform: translate(2px, -1px) rotate(0.3deg); }
  25%  { transform: translate(-2px, 1px) rotate(-0.3deg); }
  38%  { transform: translate(1px, 1px) rotate(0.2deg); }
  50%  { transform: translate(-1px, -1px) rotate(-0.2deg); }
  62%  { transform: translate(2px, 0px) rotate(0.25deg); }
  75%  { transform: translate(-2px, 1px) rotate(-0.25deg); }
  88%  { transform: translate(1px, -1px) rotate(0.15deg); }
  100% { transform: translate(0px, 0px) rotate(0deg); }
}







@keyframes floatX {
  0%   { transform: translateX(0); }
  40%  { transform: translateX(-6px); }
  70%  { transform: translateX(8px); }
  100% { transform: translateX(0); }
}

@keyframes floatY {
  0%,
  100% { transform: translateY(0); }
  50%  { transform: translateY(-28px); }
}

@keyframes floatRotate {
  0%,
  100% { rotate: 0deg; }
  50%  { rotate: 1.2deg; }
}










@media screen and (max-width: 767px) {
  .head_area {

  }

  .parallax-pin-area {
    min-height: 100vh;
    padding-bottom:40px;
  }
.parallax-bg-single {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1800px;
  background: url("../images/bg_top.jpg") center top / cover no-repeat;
  z-index: 1;
  pointer-events: none;
  will-change: transform, top, left, width;
}
  .parallax-body {
    padding: 0 0;
  }

  .inner {
    padding: 30px 15px;
  }
  
.head06 img {
  transform: rotate(0deg);
}
  .head06 {
    top: 380px;
    left: 10px;
    transform: rotate(45deg);
  }

  .head07_wrap {
    top: 420px;
  }
  .head08 {
  width: 100%;
  max-width: 70%;
  margin: 0 auto;
margin-top:300px;
}
}
  



.line01 span:after {
    background: radial-gradient(circle farthest-side, #40210f, #40210f 60%, transparent 60%, transparent);
    background-size: 6px;
    content: '';
    display: inline-block;
    height: 6px;
    width: 100%;
}
h2.title01 {
  display: block;
  padding-bottom:20px;
  width:100%;
  text-align: center;
}
h2.line01 span {
  display: block;
}

.ico_ribon01 {
width:40%;
max-width: 250px;
position: absolute;
top:-40px;
left:-2%;
}
.ico_ribon02 {
width:40%;
max-width: 250px;
position: absolute;
top:-50px;
right:-2%;
}
@media screen and (max-width: 767px) {
.ico_ribon01 {
width:40%;
max-width: 30%;
position: absolute;
top:-20px;
left:-2%;
}
}

.place_text {
background-color: #D90003;
padding: 5px 15px;
margin-right: 10px;
color: white;
font-size: 20px;
border-radius: 30px;
}
.dating_text {
border: 1px solid #fff;
background-color: #fff ;
padding: 5px 15px;
margin-bottom: 150px;
color:#824A1F;
font-size: 18px;
border-radius: 30px;
line-height: 4em;
}

p.main_text {
font-size:18px;
line-height: 1.8;
}
p.main_text2 {
font-size:15px;
line-height: 1.6;
}
p.main_text3 {
font-size:22px;
line-height: 1.2;
}

@media screen and (max-width: 767px) {
p.main_text {
font-size:3vw;
line-height: 1.8;
}
p.main_text2 {
font-size:3.0vw;
line-height: 1.5;
}
p.main_text3 {
font-size:3.5vw;
line-height: 1.5;
}
.place_text {
font-size: 12px;
}
.dating_text {
font-size: 12px;
}

}
.box{
position: relative;
padding-bottom:30px;
}
@media screen and (max-width: 767px) {
.box{
position: relative;
padding-bottom:20px;
}
}
.box1_w {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box1_w .box {
width:48%;
background:#fff;
text-align: right;
margin-bottom:30px;
}
.box1_w .box_inner {
padding:0 20px;
}
.box1_w .box h3 {
background:#cf0037;
border-radius:0 0 10px 10px;
color:#fff;
font-size:19px;
text-align: center;
font-weight:bold;
margin-bottom:1em;
padding:0.5em;
width:100%;
}
.box1_w .box p.box_txt {
font-size:14px;
line-height: 1.8;
padding:1em 0;
text-align: left;
}
.box1_w .box p.box_caption {
color:#fff;
padding:0.5em;
font-size:12px;
margin-lefr:auto;
display:inline-block;
background: #041732;
padding:0.3em 1em;
border-radius:6px 0 0 0;
position: absolute;
right:0px;
bottom:0px;
}
.box h2 span:after {
background: radial-gradient(circle farthest-side, #40210f, #40210f 60%, transparent 60%, transparent);
background-size: 4px;
content: '';
display: inline-block;
height: 4px;
width: 100%;
}
.box h2 {
text-align: center;
font-size:18px;
padding-bottom:0px;
color:#40210f;
line-height: 1.4;
margin-bottom:1em;
}
.box h2 strong {
text-align: center;
font-size:24px;
padding-bottom:0px;
color:#40210f;
line-height: 1.4;
margin-bottom:1em;
font-weight:bold;
}
.box p {
font-size:14px;
}

.box2 .box_inner {
display:flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
margin-bottom:1em;
}
.box2 .box_inner img {
width:48%;
}
.box2 .box_inner .box_txt {
width:48%;
}
.box2 .box_inner p.box_txt {
  padding: 0 0 1em 0;
}


.box3_w {
display:flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box3_w .box {
width:48%;
}
.box3_w .box {
}
.box3_w .box img {
width:100%;
}
.box3_w .box h3 {
font-size:17px;
line-height: 1.6;
}
.box3_w .box h3 span {
color:#f4ff43;
}
.box3_w .box h3 .small {
font-size:14px;
}
.box4_w {
display:flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box4_1 {
width:49%;
display:flex;
justify-content: space-between;
position: relative;
}
.box4 {
padding-bottom:30px;
}
.box4_2 {
width:48%;
}
.box4_1_1 {
width:48%;
}
.box4_1_2 {
width:48%;
padding-top:50px;
}
@media screen and (max-width: 767px) {
.box1_w {
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box1_w .box {
width:100%;
background:#fff;
text-align: right;
margin-bottom:15px;
}
.box1_w .box_inner {
padding:0 15px;
}
.box1_w .box h3 {
background:#cf0037;
border-radius:0 0 10px 10px;
color:#fff;
font-size:3.6vw;
text-align: center;
font-weight:bold;
margin-bottom:1em;
padding:0.5em;
}
.box1_w .box p.box_txt {
font-size:2.8vw;
line-height: 1.8;
padding:1em 0;
text-align: left;
}
.box1_w .box p.box_caption {
color:#fff;
padding:0.5em;
font-size:2.4vw;
margin-lefr:auto;
display:inline-block;
background: #041732;
padding:0.3em 1em;
border-radius:6px 0 0 0;
}

}
p.caption {
font-size:14px;
color:#40210f;
}
.box2_w p.caption {
margin-top:-3em;
}

@media screen and (max-width: 767px) {
.box2_w p.caption {
margin-top:-0em;
}
.box1_w {
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box3_w {
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
p.main_text {
font-size:3vw;
line-height: 1.8;
}
.box h2 {
font-size:3vw;
line-height: 1;
margin-bottom:1em;
}
.box h2 strong {
font-size:3.8vw;
line-height: 1;
margin-bottom:1em;
}
.box p {
font-size:3vw;
}
.box p.caption {
font-size:2vw;
}
p.caption {
font-size:2vw;
color:#40210f;
}

.box2_w {
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box2_1 {
width:100%;
margin-bottom: 0px;
}
.box2_2 {
width:80%;
margin-bottom: 0px;
margin-left:auto;
margin-right:auto;
padding-top:0px;
}
.box3_w {
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
.box3_w .box {
width:100%;
}
}
h2.title02 {
  display: block;
  padding-bottom:20px;
  width:100%;
  text-align: center;
}
h2.line02 span {
  display: block;
}
h2.title02 span img {
width:65%;
margin-bottom:1em;
margin-left:auto;
margin-right:auto;
}
h2.title03 {
  display: block;
  padding-bottom:20px;
  width:100%;
  text-align: center;
  color:#fff;
  font-size:40px;
  line-height: 1.6;
}
h2.title03 span img {
width:45%;
margin-bottom:0.3em;
margin-left:auto;
margin-right:auto;
}
p.title04-1 {
font-size:16px;
}
p.title04-2 {
font-size:30px;
}
.shoplogos{
width: 2%;
max-width: 25px;
margin: auto;
}
.url_text{
font-size: 18px;
text-align: center;
color: #fff;
}
.url_text a{
font-size: 16px;
color: #C39625;
}
@media screen and (max-width: 767px) {
.url_text{
font-size: 12px;
}
.url_text a{
font-size: 10px;
}
}

@media screen and (max-width: 767px) {
h2.title02 {
  display: block;
  padding-bottom:10px;
  width:100%;
  text-align: center;
}
h2.title03 {
  display: block;
  padding-bottom:20px;
  width:100%;
  text-align: center;
  color:#fff;
  font-size:6.6vw;
  line-height: 1.6;
}
p.title04-1 {
font-size:10px;
}
p.title04-2 {
font-size:20px;
}
}

.ico_balloon01 {
width:46%;
max-width: 250px;
position: absolute;
top:-10%;
right:-2%;
}
@media screen and (max-width: 767px) {
.ico_ribon02 {
width:40%;
max-width: 30%;
position: absolute;
top:-25px;
right:-2%;
}
}
.box5 {
  padding: 30px 40px;
}
@media screen and (max-width: 767px) {
.inner {
    padding: 15px 20px;
  }
.box5 {
  padding: 30px 40px;
}
}
.f_w {
width:100%;
background: #fff;
}
.f_i {
width:100%;
max-width: 1200px;
margin-left:auto;
margin-right: auto;
display:flex;
justify-content: space-between;
align-items: center;
}
.f_l1 {
width:24%;
}
.f_l2 {
width:26%;
}
.f_l3 {
width:24%;
}
.f_l4 {
width:12%;
}
.f_i p {
text-align: center;
font-size:13px;
width:100%;
display: block;
}
.f_logo ul {
display:flex;
justify-content:center;
flex-wrap: wrap;
position: relative;
align-items: center;
}
.f_logo ul li {
margin-left:1%;
margin-right:1%;
margin-bottom:20px;
}
.f_logo ul li:nth-child(1) {
width:25%;
}
.f_logo li:nth-child(2) {
width:10%;
}
.f_logo li:nth-child(3) {
width:10%;
}
.f_logo li:nth-child(4) {
width:10%;
}
.f_logo li:nth-child(5) {
width:11%;
}
.f_logo li:nth-child(6) {
width:11%;
}
.f_logo li:nth-child(7) {
width:8%;
}
.f_logo li:nth-child(8) {
width:22%;
}
.f_logo li:nth-child(9) {
width:8%;
}
.f_logo li:nth-child(10) {
width:8%;
}
.f_logo li:nth-child(11) {
width:10%;
}
.f_logo li:nth-child(12) {
width:10%;
}
.f_logo li:nth-child(13) {
width:8%;
}
.f_logo li:nth-child(14) {
width:8%;
}
.f_logo li:nth-child(15) {
width:10%;
}
@media screen and (max-width: 1001px) {
.f_i {
padding-left:40px;
padding-right:40px;
}
}
@media screen and (max-width: 767px) {
.f_i {
display: block;
padding-left:10px;
padding-right:10px;
}
.f_l1 {
width:94%;
margin-bottom:20px;
padding-left:20px;
padding-right:20px;
margin-left:auto;
margin-right:auto;
}
.f_l2 {
width:100%;
margin-bottom:20px;
padding-left:20px;
padding-right:20px;
margin-left:auto;
margin-right:auto;
}
.f_l3 {
width:80%;
padding-left:20px;
padding-right:20px;
margin-left:auto;
margin-right:auto;
margin-bottom:20px;
}
.f_l4 {
width:50%;
padding-left:20px;
padding-right:20px;
margin-left:auto;
margin-right:auto;
}
.f_i p {
font-size:2vw;
}
.f_logo ul li:nth-child(1) {
width:30%;
}
.f_logo li:nth-child(2) {
width:17%;
}
.f_logo li:nth-child(3) {
width:17%;
}
.f_logo li:nth-child(4) {
width:17%;
}
.f_logo li:nth-child(5) {
width:19%;
}
.f_logo li:nth-child(6) {
width:19%;
}
.f_logo li:nth-child(7) {
width:18%;
}
.f_logo li:nth-child(8) {
width:34%;
}
.f_logo li:nth-child(9) {
width:17%;
}
.f_logo li:nth-child(10) {
width:16%;
}
.f_logo li:nth-child(11) {
width:18%;
}
.f_logo li:nth-child(12) {
width:18%;
}
.f_logo li:nth-child(13) {
width:17%;
}
.f_logo li:nth-child(14) {
width:18%;
}
.f_logo li:nth-child(15) {
width:20%;
}
.f_logo ul li {
margin-left:1%;
margin-right:1%;
margin-bottom:10px;
}
}

.box6 {
background: #dde4a0;
padding:0 30px 40px;
}
@media screen and (max-width: 767px) {
.box6 {
padding:0 15px 20px;
}
}
.box6 .tt_img {
width:100%;
max-width: 500px;
margin:0 auto;
margin-bottom:2em;
}
.box6 .tt_img img {
margin-top:-14px;
}

.box6 h2 span:after {
background: radial-gradient(circle farthest-side, #323a0f, #323a0f 60%, transparent 60%, transparent);
background-size: 4px;
content: '';
display: inline-block;
height: 4px;
width: 100%;
}
.box6 h2 {
text-align: center;
font-size:18px;
padding-bottom:0px;
color:#323a0f;
line-height: 1.4;
margin-bottom:1em;
}
.box6 h2.tt1 strong {
text-align: center;
font-size:24px;
padding-bottom:0px;
color:#323a0f;
line-height: 1.4;
margin-bottom:1em;
font-weight:bold;
}
.box6 h2.tt2 strong {
text-align: center;
font-size:20px;
padding-bottom:0px;
color:#000;
line-height: 1.4;
margin-bottom:1em;
font-weight:bold;
}

.box6 h2.tt1 {
padding-top:1em;
}
.bn_01 {
width:100%;
max-width: 250px;
position: absolute;
top:650px;
left:0;
right:0;
margin:0 auto;
}
.bn_01 img {
  transition: transform 0.6s ease, opacity 0.4s ease;
}

.bn_01:hover img {
  transform: scale(1.05);
  opacity: 0.6;
}
@media screen and (max-width: 767px) {
.bn_01 {
width:100%;
max-width: 30%;
position: absolute;
top:240px;
left:0;
right:0;
margin:0 auto;
}
.box6 .tt_img {
width:100%;
max-width: 80%;
margin:0 auto;
margin-bottom:2em;
}
.box6 .tt_img img {
margin-top:-2.5%;
}
.box6 h2 {
font-size:3vw;
line-height: 1;
margin-bottom:1em;
}

.box6 h2.tt1 strong {
font-size:3.8vw;
line-height: 1;
margin-bottom:1em;
}
.box6 h2.tt2 strong {
font-size:3.8vw;
line-height: 1;
margin-bottom:1em;
}
}
.bento {
width:100%;
max-width: 1000px;
margin-left:auto;
margin-right: auto;
display:flex;
justify-content:center;
align-items:flex-start;
flex-wrap: wrap;

}
.bento li {
width:31%;
margin-left:1%;
margin-right:1%;
font-size:17px;
margin-bottom:1em;
}
@media screen and (max-width: 767px) {
.bento li {
width:48%;
margin-left:1%;
margin-right:1%;
font-size:2.8vw;
}
}
.bento2 {
width:100%;
max-width: 1000px;
margin-left:auto;
margin-right: auto;
display:flex;
justify-content:center;
align-items:flex-start;
flex-wrap: wrap;

}
.bento2 li {
width:31%;
margin-left:5%;
margin-right:5%;
font-size:17px;
margin-bottom:1em;
}
.box7 .tt2 {
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
.bento2 li {
width:48%;
margin-left:1%;
margin-right:1%;
font-size:2.8vw;
}
}
.box7 {
background: #b9d090;
padding:0 100px 40px;
border-radius: 10px;
margin-top:100px;
}
.box7 .tt_img {
width:100%;
max-width: 700px;
margin:0 auto;
margin-bottom:2em;
}
.box7 .tt_img img {
margin-top:-70px;
}

.box8 {
background: #f3eeba;
padding:0 30px 40px;
margin-top:4em;
}
.box8 .tt_img {
width:100%;
max-width: 500px;
margin:0 auto;
margin-bottom:2em;
}
.box8 .tt_img img {
margin-top:-14px;
}

.box8 h2 span:after {
background: radial-gradient(circle farthest-side, #555234, #555234 60%, transparent 60%, transparent);
background-size: 4px;
content: '';
display: inline-block;
height: 4px;
width: 100%;
}
.box8 h2 {
text-align: center;
font-size:18px;
padding-bottom:0px;
color:#555234;
line-height: 1.4;
margin-bottom:1em;
}
.box8 h2.tt1 strong {
text-align: center;
font-size:22px;
padding-bottom:0px;
color:#555234;
line-height: 1.4;
margin-bottom:1em;
font-weight:bold;
}
.box8 h2.tt2 strong {
text-align: center;
font-size:20px;
padding-bottom:0px;
color:#555234;
line-height: 1.4;
margin-bottom:1em;
font-weight:bold;
}
.box8 h2.tt1 {
padding-top:1em;
}

@media screen and (max-width: 767px) {
.box7 {
margin-top:60px;
}
.box7 .tt_img {
width:100%;
max-width: 120%;
margin:0 auto;
margin-bottom:1em;
}
.box7 .tt_img img {
margin-top:-50px;
}
.box8 .tt_img {
width:100%;
max-width: 80%;
margin:0 auto;
margin-bottom:2em;
}
.box8 .tt_img img {
margin-top:-2.5%;
}
.box8 h2 {
font-size:3vw;
line-height: 1;
margin-bottom:1em;
}

.box8 h2.tt1 strong {
font-size:3.8vw;
line-height: 1;
margin-bottom:1em;
}
.box6 h2.tt2 strong {
font-size:2.6vw;
line-height: 1;
margin-bottom:1em;
}
.box7 h2.tt2 strong {
font-size:2.6vw;
line-height: 1;
margin-bottom:1em;
}
.box8 h2.tt2 strong {
font-size:2.6vw;
line-height: 1;
margin-bottom:1em;
}
}
.bento img,
.bento2 img {
margin-bottom:0.3em;
}



@media screen and (max-width: 767px) {
.box6 {
padding:0 15px 20px;
}
.box7 {
padding:0 15px 20px;
}
.box8 {
padding:0 15px 20px;
}
.bento li {
font-size:2.4vw;
}
.bento2 li {
font-size:2.4vw;
}
}


.box7 .bento2 {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: nowrap;
}

.box7 .bento2 li {
  width: 48%;
  margin: 0 0 1em;
}

.box7 .tt2 {
  position: relative;
  margin: 0 0 12px;
  padding-bottom: 12px; /* ドットライン用 */
  
  min-height: 4.2em; /* ←2行基準 */
  
  display: flex;
  align-items: center;     /* ←縦中央 */
  justify-content: center; /* ←横中央 */

  text-align: center;
  line-height: 1.4;
}

.box7 .tt2 span {
  display: block;
  width: 100%;
}

.box7 .tt2 span:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  display: block;
  background: radial-gradient(circle farthest-side, #323a0f, #323a0f 60%, transparent 60%, transparent);
  background-size: 4px;
}

.bg_org {
background:#e5d1ad;
}

.bg_1 {
background-image: linear-gradient(#103558, #000212);
}
.bg_2 {
background-image: linear-gradient(#b44201, #320400);
}
.bg_3 {
/*background-image: linear-gradient(#5d90d2, #2e66ae);*/
background-image: url("../images/shutterstock_106291001.jpg");
}
.bg_2 .inner {
background-color:rgba(255, 255, 255, 0.2);
}

.bg_2 .inner2 {
background-color:rgba(255, 255, 255, 0.1);
}
.bg_3 .inner {
background-color:rgba(255, 255, 255, 0.1);
}
h3.ftt1 {
font-size:24px;
}
h3.ftt1 span {
font-size:18px;
}

.box8_w {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
flex-direction:column;
}
.box8_w .box {
width:100%;
background:#fff;
text-align: right;
margin-bottom:0px;
}
.box8_w .box_inner {
padding:0 20px;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;

}
.box8_w .box h3 {
background:#cf0037;
border-radius:0 0 10px 10px;
color:#fff;
font-size:19px;
font-weight:bold;
margin-bottom:1em;
padding:0.5em;
width:100%;
display:inline-block;
text-align: left;
}
.box8_w .box p.box_txt {
font-size:14px;
line-height: 1.8;
padding:1em 0;
text-align: left;
}
.box8_w .box p.box_txt span {
font-size:12px;
line-height: 1.8;
padding:1em 0;
text-align: left;
}
.box8_w .box p.box_caption {
color:#fff;
padding:0.5em;
font-size:12px;
margin-lefr:auto;
display:inline-block;
background: #041732;
padding:0.3em 1em;
border-radius:6px 0 0 0;
position: absolute;
right:0px;
bottom:0px;
}
.box_txt_w {
width:50%;
}
.box_img {
width:35%;
}
@media screen and (max-width: 767px) {
.box8_w {
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
flex-direction:column-reverse;
}
.box8_w .box {
width:100%;
background:#fff;
text-align: right;
margin-bottom:15px;
}
.box8_w .box_inner {
padding:0 15px;
display: block;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
flex-direction:column-reverse;
}
.box8_w .box h3 {
background:#cf0037;
border-radius:0 0 10px 10px;
color:#fff;
font-size:3.6vw;
font-weight:bold;
margin-bottom:1em;
padding:0.5em;
}
.box8_w .box p.box_txt {
font-size:2.8vw;
line-height: 1.8;
padding:0 0 1.5em 0;
text-align: left;
}
.box8_w .box p.box_txt span {
font-size:2.4vw;
line-height: 1.8;
padding:1em 0;
text-align: left;
}
.box8_w .box p.box_caption {
color:#fff;
padding:0.5em;
font-size:2.4vw;
margin-lefr:auto;
display:inline-block;
background: #041732;
padding:0.3em 1em;
border-radius:6px 0 0 0;
}
.box_txt_w {
width:100%;
}
.box_img {
width:100%;
}
}

.air_box{
width:90%;
max-width: 1000px;
margin: auto;
}
.air_boxP{
text-align: left;
font-size: 23px;
font-weight: bolder;

}

@media screen and (max-width: 767px) {
.air_boxP{
font-size: 18px;

}
}





















