@charset "UTF-8";
/* CSS Document */
/**********************************************************/
/* PC */
/**********************************************************/
.modaal-image .modaal-container {
    border-radius: 60px;
}
.sec-ttl {
  font-size: 3.3rem;
  color: #fff;
  background: #556D88;
  padding: 26px;
  width: 100%;
  border-radius: 65px;
  text-align: center;
}

.under-txt {
  font-size: 3rem;
  padding-bottom: 19px;
  border-bottom: solid 1px #707070;
  width: 530px;
  text-align: center;
  margin: 0 auto 70px;
}

.sb-ttl {
  text-align: center;
  line-height: 3;
  font-size: 1.4rem;
}

div.note {
  background: #E0DFDF;
  border-radius: 20px;
  padding: 25px 25px;
  font-size: 1.1rem;
  line-height: 1.8;
}

/**********************************
.mv
**********************************/
.mv {
  background-image: url("../images/meal/under-fv.webp?j0bj74tx");
}
/**********************************
main-ttl-sec
**********************************/
.main-ttl-sec {
  margin: 175px auto 0;
}
.main-ttl-sec .ttl {
  line-height: 3;
  text-align: center;
  margin-bottom: 117px;
}

/**********************************
sec1
**********************************/
.sec1 {
  margin: 175px auto 148px;
}
.sec1 .contents1 {
  margin: 44px auto 50px;
}

.sec1 .contents1 img {
  width: 711px;
}

.sec1 .bbg-set {
  margin-right: 100px;
  width: 343px;
}

.sec1 .bbg-set p {
  font-size: 2.6rem;
  margin: 32px auto 24px;
}

.sec1 .bbg-set ul {
  padding-right: 32px;
}

.sec1 .bbg-set dl {
  line-height: 2;
  font-size: 1.1rem;
  margin-bottom: 27px;
}

.sec1 .various-set {
  margin-top: 33px;
  border-top: solid 1px #707070;
  padding-top: 40px;
}

.sec1 .various-set dt {
  font-size: 1.9rem;
  line-height: 1.2;
  margin-bottom: 34px;
}

.sec1 .various-set dd {
  font-size: 1.1rem;
  line-height: 2;
  font-family: "Noto Sans JP", sans-serif;
}

.sec1 .sec-bg {
  width: 600px;
  height: 230px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 30px;
  text-align: center;
  color: #fff;
  align-items: center;
  font-size: 3.3rem;
  display: flex;
}

.sec1 .sec-bg.bg1 {
  background-image: url("../images/meal/meals1-2.webp?v94euj2h");
}

.sec1 .sec-bg.bg2 {
  background-image: url("../images/meal/meals1-3.webp?prt5d295");
}

.sec1 .sec-bg p {
  width: 600px;
}

.sec1 .contents2 li dl {
  margin-top: 26px;
  padding: 36px 100px 0 50px;
  border-left: solid 1px #707070;
  height: 367px;
}

.sec1 .contents2 li dt {
  font-size: 2.1rem;
  margin-bottom: 30px;
}

.sec1 .contents2 li dd {
  font-size: 1.1rem;
  margin-bottom: 30px;
  line-height: 2;
  font-family: "Noto Sans JP", sans-serif;
}

/**********************************
sec2
**********************************/
.sec2 {
  margin-bottom: 176px;
}

.sec2 .sb-ttl {
  margin: 70px auto 80px;
}

.sec2 li img {
  width: 540px;
}

.sec2 li dl {
  width: 460px;
  height: 227px;
  margin: 22px auto 54px;
  border-left: solid 1px #707070;
  padding: 30px 0 0 40px;
}

.sec2 li dt {
  font-size: 3.5rem;
  margin-bottom: 30px;
}

.sec2 li dd {
  font-size: 1.1rem;
  line-height: 2;
  letter-spacing: 0.2em;
}
.sec2 .under-txt {
    margin: 0 auto 25px;
}
.sec2 .small-txt {
    font-size: 1.3rem;
    width: 320px;
    color: #9D2424;
    margin: 0 auto 25px;
    line-height: 2;
}

/**********************************
sec3
**********************************/
.sec3 .sb-ttl {
  margin: 70px auto 56px;
}

.sec3 .under-txt {
    width: 480px;
    letter-spacing: 0.2em;
    margin: 0 auto 80px;
}

.sec3 ul {
  padding: 0 50px;
  margin-bottom: 67px;
}

.sec3 li {
  height: 268px;
  border-left: solid 1px #707070;
  width: 33%;
}

.sec3 li dl {
  margin: 22px auto 54px;
  padding: 30px 0 0 40px;
}

.sec3 li dt {
  font-size: 3.5rem;
  margin-bottom: 20px;
  border-bottom: solid 2px #556D88;
  width: 70px;
  letter-spacing: 0;
  padding-bottom: 10px;
}

.sec3 li:last-of-type dt {
  width: 114px;
}

.sec3 li dd {
  font-size: 1.1rem;
  line-height: 2;
  letter-spacing: 0.1em;
}

.sec3 li dd a {
  color: #292929;
}

/**********************************
sec4
**********************************/
.sec4 {
  margin: 0 auto;
}

.sec4 .sb-ttl {
  margin-bottom: 60px;
}

.sec4 .main-img {
  width: 1060px;
  margin:0 auto 70px;
	text-align:center;
}

.sec4 h3 {
  font-size: 3.5rem;
  margin-bottom: 67px;
  text-align: center;
}

.sec4 .sec-txt {
  font-size: 1.1rem;
  width: 646px;
  margin: 0 auto 100px;
  line-height: 2;
}

.sec4 .sec-txt span {
  display: block;
  margin-top: 30px;
}

.sec4 .kaya li,
.sec4 .kura li{
  width: 240px;
  margin-bottom: 53px;
}

.sec4 .kaya li:first-of-type,
.sec4 .kura li:last-of-type {
  width: 30px;
  writing-mode: vertical-rl;
  text-align: center;
}

.sec4 .kaya li:first-of-type {
  padding-left: 15px;
}

.sec4 .kura li:last-of-type {
  padding-right: 15px;
}
.sec4 .kaya li p,
.sec4 .kura li p{
  margin-top: 18px;
  font-size: 1.3rem;
  text-align: center;
}
.sec4 .sec-bg {
  width: 600px;
  height: 230px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 30px;
  text-align: center;
  color: #fff;
  align-items: center;
  font-size: 3.3rem;
  display: flex;
}

.sec4 .sec-bg.bg1 {
  background-image: url("../images/meal/meals1-2.webp?v94euj2h");
}

.sec4 .sec-bg.bg2 {
  background-image: url("../images/meal/meals1-3.webp?prt5d295");
}

.sec4 .sec-bg p {
  width: 600px;
}
.sec4 .contents2{
	margin-bottom:90px;
}
.sec4 .contents2 li dl {
  margin-top: 26px;
  padding: 36px 100px 0 50px;
  border-left: solid 1px #707070;
  height: 367px;
}

.sec4 .contents2 li dt {
  font-size: 2.1rem;
  margin-bottom: 30px;
}

.sec4 .contents2 li dd {
  font-size: 1.1rem;
  margin-bottom: 30px;
  line-height: 2;
  font-family: "Noto Sans JP", sans-serif;
}


/**********************************
sec5
**********************************/
.sec5 .link-area {
  margin: 138px auto 269px;
}

.sec5 .link-area a {
  font-size: 3rem;
  padding: 38px 0;
  border: solid 1px #707070;
  border-radius: 134px;
  text-align: center;
  width: 100%;
  box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.3);
  display: block;
  letter-spacing: 0.25em;
}

.sec5 .link-area span {
  font-size: 2.1rem;
  padding: 16px 0 0;
  display: block;
  letter-spacing: 0.1em;
}

/**********************************************************/
/* SP用 */
/**********************************************************/
@media (max-width: 768px) {
	.modaal-image .modaal-container {
    border-radius: 40px;
}
  .sec-ttl {
    font-size: 2rem;
    padding: 15px;
    width: 90%;
    margin: 0 auto;
  }
	.sb-ttl {
		font-size: 1.2rem;
	}
  .under-txt {
    font-size: 1.6rem;
    padding-bottom: 10px;
    width: 310px;
    margin: 0 auto 35px;
  }
  div.note {
    padding: 20px;
    font-size: 1rem;
  }
/**********************************
main-ttl-sec
**********************************/
.main-ttl-sec {
  margin: 80px auto 0;
	padding: 0 20px;
}
.main-ttl-sec .ttl {
    margin-bottom: 50px;
  }
  /**********************************
  sec1
  **********************************/
  .sec1 {
    margin: 80px auto 50px;
    padding: 0 20px;
  }
  .sec1 .contents1.flex {
    margin: 22px auto;
    flex-direction: column;
  }
  .sec1 .bbg-set {
    margin-right: auto;
    width: 100%;
  }
  .sec1 .bbg-set p {
    font-size: 1.6rem;
    margin: 20px auto;
  }
  .sec1 .bbg-set ul {
    padding: 0 20px;
  }
  .sec1 .bbg-set ul li {
    display: flex;
    flex-wrap: wrap;
  }
  .sec1 .bbg-set dl {
    font-size: 1rem;
    margin-bottom: 20px;
    padding: 0 20px;
  }
  .sec1 .various-set dt {
    font-size: 1.3rem;
    margin-bottom: 17px;
    padding-top: 30px;
  }
  .sec1 .various-set dd {
    font-size: 1rem;
  }
  .contents2.flex {
    flex-wrap: wrap;
  }
  .sec1 .sec-bg {
    width: 100%;
    font-size: 2rem;
  }
  .sec1 .sec-bg p {
    width: 100%;
  }
  .sec1 .contents2 li dl {
    margin: 30px auto;
    padding: 13px 20px 0 10px;
    height: 310px;
  }
  .sec1 .contents2 li dt {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  .sec1 .contents2 li dd {
    font-size: 1rem;
    margin-bottom: 15px;
  }
	
  /**********************************
  sec2
  **********************************/
  .sec2 {
    margin-bottom: 80px;
    padding: 0 20px;
  }
  .sec2 .sb-ttl {
    margin: 35px auto 40px;
	  font-size: 1.2rem;
  }
  .sec2 .flex.inner1140 {
    flex-direction: column;
  }
  .sec2 li dt {
    font-size: 2.2rem;
    margin-bottom: 15px;
  }
  .sec2 li dd {
    font-size: 1rem;
  }
  .sec2 li dl {
    width: 100%;
    height: 190px;
    margin: 20px auto 50px;
    border-left: solid 1px #707070;
    padding: 20px 0 0 10px;
  }
  .sec2 li:last-of-type dl {
    height: 120px;
  }
  /**********************************
  sec3
  **********************************/
  .sec3 {
    padding: 0 20px;
  }
  .sec3 .sb-ttl {
    margin: 35px auto 28px;
  }
  .sec3 .under-txt {
    width: 265px;
    margin: 0 auto 40px;
  }
  .sec3 ul {
    padding: 0;
    margin-bottom: 35px;
  }
  .sec3 ul.flex {
    flex-direction: column;
  }
  .sec3 li {
    height: 160px;
    width: 100%;
    margin-bottom: 35px;
  }
  .sec3 li dl {
    margin: 10px auto 30px;
    padding: 10px 0 0 40px;
  }
  .sec3 li dt {
    font-size: 2.5rem;
    margin-bottom: 15px;
    width: 52px;
    padding-bottom: 6px;
  }
  .sec3 li dd {
    font-size: 1rem;
  }
  /**********************************
  sec4
  **********************************/
  .sec4 {
    margin: 0 auto;
    padding: 0 20px;
  }
  .sec4 .sb-ttl {
    margin-bottom: 30px;
  }
  .sec4 h3 {
    font-size: 2rem;
    margin-bottom: 30px;
  }
	.sec4 h3:last-of-type {
		width:100%;
		font-size: 1.8rem;
  }
	
  .sec4 .sec-txt {
    width: 100%;
    margin: 0 auto 50px;
	  text-align: center;
}
  .sec4 .flex {
    flex-wrap: wrap;
    /*justify-content: flex-end;*/
  }
	 .sec4 .kaya li,
	.sec4 .kura li{
    /*width: 90%;*/
	  width: 30%;
    margin-bottom: 30px;
	  padding-left: 5px;
  }
	.sec4 .kaya li:first-of-type,
	.sec4 .kura li:first-of-type {
    width: 30px;
    writing-mode: vertical-rl;
    text-align: center;
}
 
  .sec4 .kaya li:first-of-type,
	.sec4 .kura li:first-of-type{
    padding: 0 15px;
  }
	.sec4 .kaya li:nth-of-type(5),
	.sec4 .kura li:nth-of-type(5){
		margin-left:30px;
  }
  .sec4 .kaya li p,
	.sec4 .kura li p{
    margin-top: 20px;
	  /*font-size: 1.1rem;*/
    font-size: 1rem;
  }
  .sec4 .contents2.flex {
    flex-wrap: wrap;
  }
  .sec4 .sec-bg {
    width: 100%;
    font-size: 2rem;
  }
  .sec4 .sec-bg p {
    width: 100%;
  }
  .sec4 .contents2 li dl {
    margin: 30px auto;
    padding: 13px 20px 0 10px;
    height: 310px;
  }
  .sec4 .contents2 li dt {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  .sec4 .contents2 li dd {
    font-size: 1rem;
    margin-bottom: 15px;
  }
	
  /**********************************
  sec5
  **********************************/
  .sec5 {
    padding: 0 20px;
  }
  .sec5 .link-area {
    margin: 60px auto 130px;
  }
  .sec5 .link-area a {
    font-size: 2rem;
    padding: 18px;
  }
  .sec5 .link-area span {
    font-size: 1.2rem;
    padding: 10px 0 0;
  }
  .contact,
  .access-sec {
    padding: 70px 0;
  }
}
