@charset "UTF-8";
body {
	font-family: "M PLUS Rounded 1c";
	min-width: 1200px;
}
.mv {
  width: 100%;
  height: 100vh;
  background: #138eae;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: center;
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: center;
	overflow: hidden;
}
.heart {
    background: #fff;
    width: 600px;
    margin: 0 auto;
    background-image: url(../img/tomatos.jpg);
    background-attachment: fixed;
    background-size: contain;
    background-position: center;
}
.concept_title {
    width: 700px;
    margin: 70px auto 50px auto;
}
.sun {
    position: absolute;
    top: -93px;
    right: 10%;
    width: 330px;
}
.cloud1 {
    position: absolute;
    width: 260px;
    left: 3%;
    top: 40%;
}
.cloud2 {
    position: absolute;
    bottom: 10%;
    right: -3%;
    width: 500px;
}
.cloud3 {
    position: absolute;
    top: -240px;
    left: -28%;
}
.cloud4 {
    position: absolute;
    width: 100px;
    right: 16%;
}

.cloud5 {
    position: absolute;
    bottom: 6%;
    width: 170px;
    left: 22%;
}
.cloud6 {
    position: absolute;
    width: 300px;
    right: -5%;
    top: 26%;
}
.cloud7 {
    position: absolute;
    width: 80px;
    right: 60%;
    top: 63%;
}
.logo {
  margin: 0 auto;
  display: block;
  width: 350px;
}
.concept_inner {
  max-width: 1100px;
  display: flex;
  margin: 0 auto;
  padding: 80px 0;
	align-items: center;
}
.concept_cap {
    width: 47.5%;
    background-image: url(../img/logo_bg.png);
    background-size: contain;
    background-position: center;
	background-repeat: no-repeat;
	position: relative;
	z-index: 9999;
}
.concept_no {
    position: absolute;
    left: -60px;
    top: -42px;
    width: 100px;
}
.concept_image {
    width: 47.5%;
    background: #eee;
    margin-right: 5.5%;
    border-radius: 210px;
    overflow: hidden;
}
.ci_even {
    flex-direction: row-reverse;
}

.ci_even .concept_image {
    margin-right: 0!important;
    margin-left: 5.5%;
}

.ci_even .concept_cap {
    margin-right: 2.5%;
    margin-left: 0!important;
}
section.concept {
    padding: 150px 0 200px;
    background-image:url(../img/top_bg.jpg);
    background-position: top center;
    background-size: contain;
    background-repeat: no-repeat;
	position: relative;
}
.half_tomato {
    position: absolute;
    right: 0;
    top: -160px;
    width: 280px;
}
.half_tomato2 {
    position: absolute;
    left: 0;
    top: 660px;
    z-index: 999;
    width: 280px;
}
.half_yellow_r {
    position: absolute;
    right: 0;
    width: 200px;
    top: 16%;
}
.half_yellow_l {
    position: absolute;
    width: 160px;
    top: 33%;
    z-index: 9;
}
.concept_inner h2 {
    font-size: 2rem;
    width: 100%;
    margin-bottom: 30px;
    letter-spacing: 0px;
    color: #138eae;
    font-weight: bold;
}
.concept_cap h2 span {
    width: 90px;
    display: inline-block;
    margin-left: 10px;
}

.concept_cap h2 span img {
    width: 100%;
    height: auto;
}
.message {
  padding: 0 0 200px 0;
  margin: 0 auto;
  background-image:url(../img/bg.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}
.message_inner {
    display: flex;
    padding: 0 160px 160px;
    max-width: 1100px;
    background-color: #138eae;
    background-image: url(../img/road.png);
    background-size: 220%;
    background-position: center bottom;
    background-repeat: repeat-x;
    margin: 0 auto;
    position: relative;
    border-radius: 0 0 30px 30px;
}
.message h2 {
    font-size: 3.4rem;
    width: 10%;
    margin-right: 100px;
    line-height: 62px;
    color: #f5d13a;
    text-shadow: 0 4px 7px rgb(0 0 0 / 20%);
    letter-spacing: 3px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.message_inner:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    left: 0;
    border-radius: 30px 30px 0 0;
    height: 160px;
    background-color: #138eae;
    background-image: url(../img/message_cloud.png);
    background-size: 60%;
    background-position: center top;
    background-repeat: no-repeat;
    top: -160px;
}
.message_text {
    line-height: 34px;
    letter-spacing: 0.5px;
    font-size: 1rem;
    text-shadow: 0 3px 4px rgb(0 0 0 / 20%);
    color: #fff;
}
.link_list li a {
    display: block;
    padding: 22px;
    width: 290px;
    text-align: center;
    margin: 10px 0;
    border-radius: 100px;
    font-weight: bold;
    font-size: 1.1rem;
    background: #fff;
    color: #138eae;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.link_list li a:hover {
	background: #138eae;
	color: #fff;
}
.link_list li span {
  font-size: 0.8rem;
  color: #1e7c3b;
  display: block;
  line-height: 17px;
  margin-top: 30px;
  text-align: center;
}
.link_list {width: 300px;}
section.links {
    padding: 100px 0;
	background:#f5d13a;
}
footer {
  padding: 100px 0;
  background: #138eae;
}

small {
  text-align: center;
  display: block;
  padding: 15px 0;
  font-size: 0.7rem;
  background: #06738f;
  color: #fff;
}
.links_inner {
    max-width: 700px;
    margin: 0 auto;
	position: relative;
}
.owner {
    position: absolute;
    bottom: -110px;
    width: 600px;
    right: -180px;
}
.concept_inner p {
    font-size: 1rem;
    letter-spacing: 0.5px;
    line-height: 34px;
}
.present {
  display: block;
  font-size: 0.9rem;
  color: #138eae;
  font-weight: bold;
  border-radius: 100px;
  width: max-content;
  margin-top: 40px;
  position: relative;
  border: 2px dashed;
  padding: 20px 160px 20px 30px;
  text-align: left;
}
.present span {
    position: absolute;
    width: 210px;
    right: -50px;
    bottom: -52px;
}
.info table {
    width: 74%;
}
.info table th {
    color: #fff;
    font-size: 0.9rem;
    width: 20%;
    padding: 30px 0;
    border-bottom: 1px solid #fff;
}
.info table td {
    color: #fff;
    font-size: 0.9rem;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    padding: 30px;
}
.info table tr a {
    display: block;
    color: #fff;
    font-size: 0.9rem;
    text-decoration: underline;
}
.info {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
}
.info h2 {
    width: 300px;
    margin-right: 70px;
}
.link_list li:last-child a {
    background: #1e7c3b;
	color: #fff;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.link_list li:last-child a:hover {
	color: #1e7c3b;
	background: #fff;
}
/*---------------------------------------------------------------*\
	$980px
\*---------------------------------------------------------------*/
@media screen and (max-width: 980px) {
body {
	font-family: "M PLUS Rounded 1c";
	min-width: auto;
}
.mv {
  width: 100%;
  height: 80vh;
  background: #138eae;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: center;
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: center;
  overflow: hidden;
}
.heart {
    background: #fff;
    width: 70%;
    margin: 0 auto;
    background-image: url(../img/tomatos_sp.jpg);
    background-attachment: fixed;
    background-size: contain;
    background-position: center;
}
.concept_title {
    width: 85%;
    position: relative;
    margin: 30px auto 30px auto;
    z-index: 99;
}
.sun {
    position: absolute;
    top: -3%;
    right: 25%;
    width: 20%;
}
.cloud1 {
    position: absolute;
    width: 25%;
    left: 2%;
    top: 48%;
}
.cloud2 {
    position: absolute;
    bottom: 22%;
    right: -2%;
    width: 15%;
}
.cloud3 {
    position: absolute;
    top: -4%;
    left: -10%;
    width: 38%;
}
.cloud4 {
    position: absolute;
    width: 40%;
    right: -10%;
}

.cloud5 {
    position: absolute;
    bottom: 9%;
    width: 45%;
    left: -20%;
}
.cloud6 {
    position: absolute;
    width: 30%;
    right: -10%;
    top: 11%;
}
.cloud7 {
    position: absolute;
    width: 13%;
    right: 70%;
    top: 63%;
}
.logo {
  margin: 0 auto;
  display: block;
  width: 70%;
}
.concept_inner {
  max-width: 90%;
  display: block;
  margin: 0 auto;
  padding: 30px 0 0;
  align-items: center;
}
.concept_cap {
    width: 100%;
    background-image: none;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    z-index: 9999;
}
.concept_no {
    position: absolute;
    left: 6%;
    top: -26%;
    width: 20%;
}
.concept_image {
    width: 70%;
    background: #eee;
    margin: 0 auto 30px;
    border-radius: 20px;
    overflow: hidden;
}
.ci_even {
    flex-direction: row-reverse;
}

.ci_even .concept_image {
    margin: 0 auto 30px!important;
    margin-left: 0;
}

.ci_even .concept_cap {
    margin-right: 2.5%;
    margin-left: 0!important;
}
section.concept {
    padding: 50px 0 50px;
    background-image:url(../img/top_bg.jpg);
    background-position: top center;
    background-size: contain;
    background-repeat: no-repeat;
    position: relative;
}
.half_tomato {
    position: absolute;
    right: 0;
    top: 10%;
    width: 30%;
}
.half_tomato2 {
    position: absolute;
    left: 0;
    top: 350px;
    z-index: 999;
    width: 30%;
}
.half_yellow_r {
    position: absolute;
    right: 0;
    width: 21%;
    top: 39%;
}
.half_yellow_l {
    position: absolute;
    width: 15%;
    top: 31%;
    z-index: 9;
}
.concept_inner h2 {
    font-size: 0.9rem;
    width: 100%;
    margin-bottom: 20px;
    letter-spacing: 0px;
    text-align: center;
    color: #138eae;
    font-weight: bold;
}
.concept_cap h2 span {
    width: 50px;
    display: inline-block;
    margin-left: 5px;
}

.concept_cap h2 span img {
    width: 100%;
    height: auto;
}
.message {
    padding: 0 0 220px;
    margin: 0 auto;
    background-image: url(../img/bg.jpg);
    background-attachment: inherit;
    background-size: 100%;
    background-position: center bottom;
}
.message_inner {
    display: block;
    padding: 50px 10%;
    max-width: 100%;
    background-color: #138eae;
    background-image: url(../img/road.png);
    background-size: 700%;
    background-position: center bottom;
    background-repeat: repeat-x;
    margin: 0 auto;
    position: relative;
    border-radius: 0;
}
.message h2 {
    font-size: 1rem;
    width: 100%;
    margin: 0 0 30px 0;
    text-align: center;
    line-height: 25px;
    color: #f5d13a;
    text-shadow: 0 4px 7px rgb(0 0 0 / 20%);
    letter-spacing: 0px;
    -ms-writing-mode: none!important;
    writing-mode: inherit!important;
}
.message_inner:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    left: 0;
    border-radius: 0;
    height: 50px;
    background-color: #138eae;
    background-image: url(../img/message_cloud.png);
    background-size: 100%;
    background-position: center top;
    background-repeat: no-repeat;
    top: -11px;
}
.message_text {
    line-height: 24px;
    letter-spacing: 0.6px;
    font-size: 0.55rem;
    text-shadow: 0 3px 4px rgb(0 0 0 / 20%);
    color: #fff;
}
.link_list li a {
    display: block;
    padding: 18px;
    width: 70%;
    text-align: center;
    margin: 10px 0;
    border-radius: 100px;
    font-weight: bold;
    font-size: 0.6rem;
    background: #fff;
    color: #138eae;
}
.link_list li span {
  font-size: 0.55rem;
  color: #1e7c3b;
  display: block;
  line-height: 17px;
  width: 70%;
  margin-top: 20px;
  text-align: center;
}
.link_list {width: 100%;position: relative;z-index: 9999;}
section.links {
    padding: 40px 8%;
    background:#f5d13a;
    overflow: hidden;
}
footer {
  padding: 50px 5% 20px;
  background: #138eae;
}

small {
  text-align: center;
  display: block;
  padding: 20px 0;
  font-size: 0.5rem;
  background: #06738f;
  color: #fff;
}
.links_inner {
    max-width: 100%;
    margin: 0 auto;
    position: relative;
}
.owner {
    position: absolute;
    bottom: -50px;
    width: 100%;
    right: -39%;
}
.concept_inner p {
    font-size: 0.6rem;
    letter-spacing: 0.5px;
    line-height: 24px;
    width: 90%;
    margin: 0 auto;
}
.present {
  display: block;
  font-size: 0.6rem;
  color: #138eae;
  font-weight: normal;
  border-radius: 100px;
  width: max-content;
  margin-top: 20px;
  position: relative;
  background: #fff;
  margin-bottom: 30px;
  border: 1px dashed;
  padding: 10px 130px 10px 20px;
  text-align: left;
}
.concept_inner p br {
	display: none;
}
.present span {
    position: absolute;
    width: 35%;
    right: 4%;
    bottom: -66%;
}
.info table {
    width: 100%;
}
.info table th {
    color: #fff;
    font-size: 0.6rem;
    width: 100%;
    background: rgba(255,255,255,0.1);
    display: block;
    padding: 8px;
    border-bottom: none;
}
.info table td {
    color: #fff;
    font-size: 0.6rem;
    border-bottom: none;
    display: block;
    width: 100%;
    padding: 15px 0;
}
.info table tr a {
    display: block;
    color: #fff;
    font-size: 0.55rem;
    text-decoration: underline;
}
.info {
    max-width: 100%;
    margin: 0 auto;
    display: block;
    align-items: center;
}
.info h2 {
    width: 25%;
    margin: 0 auto 20px;
}
.link_list li:last-child a {
    background: #1e7c3b;
	color: #fff;
}

}
