html {
    margin-top: 0px !important;
}

.clear {
	clear: both;
	font: 0pt/0pt sans-serif;
}

.owl-nav.disabled {
    display: none;
}

img {
    object-fit: cover;
	display:block;
    width: 100%;
    padding: 0px;
    margin: 0px;
    border: 0px;
}

* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

html, body,  ul, ol, li,  h1, h2, h3, h4, h5, h6, p, div {
	margin: 0;
    padding: 0;
    font-weight:400;
    list-style:none;
}

::-webkit-scrollbar{
	width: 10px;
}

::-webkit-scrollbar-track{
	border-radius: 4px;
    background: #8fbc92;
	border-left: solid 0px #8fbc92;
}

::-webkit-scrollbar-thumb{
	background: #fff;
	border-radius: 4px;
	box-shadow: inset 0 0 0 1px #fff;
}

input, textarea, select {
    font-family: 'Noto Sans JP', sans-serif;
}





@media screen and (min-width: 970px){


div#support_bt {
    display: none;
    position: fixed;
    width: 5rem;
    height: 8rem;
    right: 3rem;
    bottom: 3rem;
    z-index: 999;
}p.support_p {
    text-align: center;
    font-size: 0.8rem;
    font-weight: bold;
    color: #dd2e44;
    line-height: 1.2;
    margin-top: 0.5rem;
}



/* font-family: 'M PLUS 1', sans-serif;
/* font-family: 'Noto Serif JP', serif; */
/*font-family: 'Roboto', sans-serif; */


:root {
  font-size: 1vw;
}


body {
    color: #212121;
    background: #fbfff3;
	font-family: 'M PLUS 1', sans-serif;
    font-size: 1.2rem;
    line-height: 1.4;
    background-size: cover;
    width: 100%;
    height: 100vh;
    background-position: center;
    background-attachment: fixed;
}


header {
    color: #fff;
    z-index: 10;
    position: fixed;
    top: 0;
    width: 100%;
    padding: 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}h1#header_h1 {
    font-family: 'M PLUS 1', sans-serif;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    font-weight: 500;
}ul#header_nav_ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}ul#header_nav_ul li {
    padding: 0 1rem;
    font-weight: bold;
}


div#mv {
    color: #fff;
    position: relative;
    width: 100%;
    height: 68rem;
    overflow: hidden;
}div#mv img {
    width: 100%;
    height: 68rem;
}


h2#top_h2 {
	font-family: 'Noto Serif JP', serif;
    position: absolute;
    z-index: 2;
    top: 20rem;
    margin-left: 8vw;
    width: 100%;
    font-size: 5rem;
    font-weight: 500;
}h2#top_h2 small {
	font-size: 2rem;
    display: block;
}.wave-container {
    position: absolute;
    width: 100%;
    height: 20rem;
    background-color: transparent;
    overflow: hidden;
    bottom: 0;
}h3#top_h3 {
	position: absolute;
    top: 32rem;
    left: 8vw;
    font-size: 1rem;
}h3#top_h3 span {
	text-align: left;
    display: table;
    padding: 0rem 0.2rem;
    font-weight: 400;
    font-size: 1.2rem;
    letter-spacing: 0.2em;
}


#circlePath_catch {
    position: absolute;
    width: 21rem;
    height: 21rem;
    font-size: 0.45rem;
    bottom: 9.8rem;
    right: -3.2rem;
    letter-spacing: 0.06em;
    font-weight: bold;
}#circlePath_catch svg {
    overflow: visible;
  }
  #circlePath_catch path {
    fill: none;
  }#circlePath_catch text {
    fill: #edc36b;
}div#good {
    position: absolute;
    width: 13.5rem;
    right: 4.5rem;
    bottom: 13.5rem;
}div#good img {
    width: 100%;
    height: 13.5rem;
    object-fit: cover;
}






section#top_content_section {
	margin: 0 8vw;
    padding: 6rem 0;
}
h2.content_h2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    font-size: 2.8rem;
}


.content_top {
    margin: 6rem 0 16rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}.content_top_left {
    width: 40rem;
}.content_top_right {
    width: 40rem;
    position: relative;
    text-align: center;
}.content_top_right_map {
    position: absolute;
    width: 100%;
    opacity: 0.3;
}p.content_top_right_p {
    position: relative;
    z-index: 2;
    font-family: 'Noto Serif JP', serif;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    padding-left: 13rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 2;
}



.about_ago {
	height: 30rem;
    margin: 12rem 0;
    position: relative;
}p.about_ago_p {
    font-family: 'Noto Serif JP', serif;
    line-height: 2;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
}.about_img1 {
    width: 30rem;
    position: absolute;
    right: 0;
    bottom: 0vh;
}.about_img2 {
    width: 20rem;
    position: absolute;
    right: 18rem;
    top: -14vh;
}

.pearl {
    margin: 6rem 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}.pearl_left {
    width: 46rem;
    font-family: 'Noto Serif JP', serif;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: 2;
}.pearl_right {
    width: 30rem;
    position: relative;
    text-align: center;
}.collagen_graph {
    margin: 6rem 0 0;
}.pearl_right_img {
    height: 45rem;
    width: 30rem;
}.pearl_right_img img {
    height: 45rem;
    width: 30rem;
    object-fit: cover;
}



h2.--obi {
	background: #0fc1a0;
    color: #fff;
    padding: 3rem 0;
    position: relative;
}h2.content_h2.--center {
    font-family: 'M PLUS 1', sans-serif;
    text-align: center;
    font-size: 3.2rem
}h2.content_h2.--center.--big_h2 small {
    display: block;
    font-size: 1.8rem;
}span.yellow {
    display: table;
    margin: 0 auto;
    line-height: 1.4;
    position: relative;
}span.yellow:before {
    content: "";
    background: rgb(255 255 0 / 25%);
    height: 0.4rem;
    width: 100%;
    position: absolute;
    bottom: 0rem;
    z-index: -1;
}





section#project_section {
    position: relative;
    padding-bottom: 10rem;
}h2.project_h2 {
    background-image: url(../img/event.jpg);
    width: 100%;
    padding: 16rem 0;
    background-size: cover;
    background-position: center;
    margin: 0rem 0;
    text-align: center;
    color: #fff;
    font-size: 4rem;
    font-weight: 400;
}h2.project_h2 small {
    display: block;
    font-size: 1.6rem;
}span.name {
    display: block;
    margin-top: 3rem;
    font-size: 1.2rem;
}span.name b {
    display: block;
    font-weight: 400;
    font-size: 2rem;
}


.project_center_text {
    text-align: center;
    line-height: 2;
    font-size: 1.4rem;
    margin: 6rem 0 14rem;
    font-weight: 400;
    letter-spacing: 0.1em;
}ul.project_ul {
    margin: 6rem 8vw 14rem;
}li.project_ul_fir {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}.project_ul_img {
    width: 40rem;
}.project_ul_text {
    width: 40rem;
}li.project_ul_sec {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 8rem;
}p.project_ul_text_p {
    line-height: 2;
}



ul.new_project_ul {
    margin: 6rem 8vw 8rem;
}li.new_pro_left {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
}.new_pro_img {
    width: 60rem;
}.new_pro_left_text {
    background: rgb(255 255 255 / 90%);
    padding: 2rem;
    position: absolute;
    width: 60rem;
    height: 16rem;
    right: 0;
    bottom: 4rem;
}.new_pro_right_text {
    background: rgb(255 255 255 / 90%);
    padding: 2rem;
    position: absolute;
    width: 50rem;
    height: 16rem;
    left: 0;
    bottom: 4rem;
}li.new_pro_right {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    margin: 6rem 0;
    flex-direction: row-reverse;
}p.new_pro_text_p {
    line-height: 1.6;
}.new_pro_img {
    width: 60rem;
    height: 36rem;
    overflow: hidden;
}.new_pro_img img {
    width: 60rem;
    height: 36rem;
    overflow: hidden;
}


div#project_all {
    margin: 12rem 10vw 8rem;
}div#project_all_img {
    margin: 8rem 4vw;
}


.message_img {
    margin: 8rem 8vw 14rem;
    position: relative;
}.message_img_text {
    font-family: 'Noto Serif JP', serif;
    position: absolute;
    z-index: 1;
    padding: 4rem;
    top: 0;
    color: #fff;
    font-size: 2rem;
}b.message_img_text_b {
    display: block;
    font-size: 3rem;
    font-weight: 400;
}



p.kago_owner {
    margin: 4rem 0 4rem;
    text-align: center;
	line-height: 1.8;
}




ul.owner_ul {
    margin: 6rem 8vw 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}ul.owner_ul li:nth-child(2) {
	margin: 0 2rem;
}span.owner_num {
	display: table;
    text-align: center;
    font-size: 4rem;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    color: #ab8458;
    padding-bottom: 1.6rem;
    border-bottom: 1px solid;
    position: relative;
    width: 10rem;
    margin: 0 auto 4rem;
}span.owner_num:before {
    content: "▼";
    font-size: 1.2rem;
    position: absolute;
    bottom: -1.2rem;
    margin-left: 1.5rem;
}.owner_img img {
    width: 100%;
    height: 18rem;
}h3.owner_h3 {
	text-align: center;
    margin: 2rem 0 4rem;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    color: #414141;
}

p.kago_owner_detail {
	margin: 2rem 0 4rem;
    text-align: center;
    line-height: 2;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #ab8458;
    font-size: 1.4rem;
}


ul.kago_owner_detail_list {
    margin: 6rem 14vw 4rem;
    position: relative;
}ul.kago_owner_detail_list li {
    display: flex;
    justify-content: space-between;
    align-items: self-start;
}span.kago_owner_detail_list_num {
    font-size: 4rem;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    color: #ab8458;
    margin-right: 4rem;
}ul.kago_owner_detail_list li {
    padding: 0 0 2rem;
    border-bottom: 1px solid rgb(189 160 128 / 41%);
    margin-bottom: 2rem;
}p.kago_owner_detail_p {
    line-height: 1.6;
}


div#footer_catch {
    background-image: url(../img/event.jpg);
    background-size: cover;
    background-position: center center;
    text-align: center;
    padding: 16rem 0;
    overflow: hidden;
    position: relative;
}.footer_catch_over_lay {
    background: rgb(0 0 0 / 38%);
    width: 100%;
    height: 50rem;
    position: absolute;
    top: 0;
}h2#footer_catch {
	font-family: 'Noto Serif JP', serif;
    position: relative;
    z-index: 1;
    color: #fff;
    letter-spacing: 0.2em;
    font-size: 2.6rem;
    line-height: 1.6;
}


footer {
    position: relative;
    padding: 12rem 8vw 18rem;
}.footer_map {
    position: absolute;
    width: 30rem;
    opacity: 0.4;
    margin-left: 25.5vw;
    top: 4rem;
}h3.footer_h3 {
    font-size: 2.6rem;
    text-align: center;
    position: relative;
}h3.footer_h3 small {
    font-size: 1.4rem;
    display: block;
}h4#footer_h4 {
	position: relative;
    font-weight: bold;
    text-align: center;
    margin-top: 4rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
}



}







@media screen and (max-width: 969px){

/* font-family: 'M PLUS 1', sans-serif;
/* font-family: 'Noto Serif JP', serif; */
/*font-family: 'Roboto', sans-serif; */



div#support_bt {
    display: none;
    position: fixed;
    width: 5rem;
    height: 6rem;
    right: 0.5rem;
    bottom: 0.5rem;
    z-index: 999;
}p.support_p {
    text-align: center;
    font-size: 0.7rem;
    font-weight: bold;
    color: #dd2e44;
    line-height: 1.2;
    margin-top: 0.5rem;
}.support_bt_img {
    width: 3rem;
    margin: 0 auto;
    display: block;
}


:root {
  font-size: 3.24vw;
}



br.sp_br {
    display: none;
}





body {
    color: #212121;
    background: #fbfff3;
	font-family: 'M PLUS 1', sans-serif;
    font-size: 1.2rem;
    line-height: 1.4;
    background-size: cover;
    width: 100%;
    height: 100vh;
    background-position: center;
    background-attachment: fixed;
}


header {
    color: #fff;
    z-index: 10;
    position: absolute;
    top: 0;
    width: 100%;
    padding: 3rem 0;
}h1#header_h1 {
    font-family: 'M PLUS 1', sans-serif;
    font-size: 3.2rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    text-align: center;
}ul#header_nav_ul {
	display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 0 0;
}ul#header_nav_ul li {
    padding: 0 1rem;
    font-weight: bold;
}


div#mv {
    color: #fff;
    position: relative;
    width: 100%;
    height: 56rem;
    overflow: hidden;
}div#mv img {
    width: 100%;
    height: 56rem;
}


h2#top_h2 {
	font-family: 'Noto Serif JP', serif;
    position: absolute;
    z-index: 2;
    top: 18rem;
    width: 100%;
    font-size: 2.7rem;
    font-weight: 500;
    margin: 0 0rem;
    text-align: center;
}h2#top_h2 small {
    font-size: 1.7rem;
    display: block;
    padding-left:0.5rem;
}.wave-container {
    position: absolute;
    width: 100%;
    height: 9rem;
    background-color: transparent;
    overflow: hidden;
    bottom: 0rem;
}h3#top_h3 {
	position: absolute;
    top: 26rem;
    font-size: 1rem;
    text-align: center;
    width: 100%;
}h3#top_h3 span {
	padding: 0rem 0.2rem;
    font-weight: 600;
    font-size: 1.2rem;
    letter-spacing: 0.2em;
    display: block;
    text-align: center;
}

#circlePath_catch {
	position: absolute;
    width: 15rem;
    height: 15rem;
    font-size: 0.45rem;
    bottom: 4.4rem;
    right: -4.5rem;
    letter-spacing: 0.06em;
    font-weight: bold;
}#circlePath_catch svg {
    overflow: visible;
  }
  #circlePath_catch path {
    fill: none;
  }#circlePath_catch text {
    fill: #edc36b;
}div#good {
	position: absolute;
    width: 7.5rem;
    right: 2rem;
    bottom: 8.5rem;
}div#good img {
    width: 100%;
    height: 8.5rem;
    object-fit: cover;
}






section#top_content_section {
    margin: 0 1rem;
    padding: 3rem 0 6rem;
}
h2.content_h2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center;
}


.content_top {
    margin: 2rem 0;
}.content_top_left {
}.content_top_right {
    position: relative;
    text-align: center;
}.content_top_right_map {
    position: absolute;
    width: 100%;
    opacity: 0.3;
}p.content_top_right_p {
	position: relative;
    z-index: 2;
    font-family: 'Noto Serif JP', serif;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    font-size: 1.1rem;
    letter-spacing: 0.1em;
    line-height: 1.8;
    margin: 3rem auto;
}



.about_ago {
    margin: 0rem 0 4rem;
    position: relative;
}p.about_ago_p {
	font-family: 'Noto Serif JP', serif;
    line-height: 2;
    margin-top: 12rem;
}.about_img1 {
    width: 18rem;
}.about_img2 {
    width: 15rem;
    position: absolute;
    right: 1rem;
    top: 8rem;
}

.pearl {
    margin: 2rem 0;
}.pearl_left {
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.1em;
    line-height: 2;
    margin: 2rem 0;
}.pearl_right {
    position: relative;
    text-align: center;
}.collagen_graph {
    margin: 2rem 0 0;
}.pearl_right_img {
}.pearl_right_img img {
}



h2.--obi {
	background: #0fc1a0;
    color: #fff;
    padding: 2rem 0;
    position: relative;
}h2.content_h2.--center {
	font-family: 'M PLUS 1', sans-serif;
    text-align: center;
    font-size: 1.3rem;
}h2.content_h2.--center small {
    display: block;
    margin-left: -0.3rem;
    font-size: 1.2rem;
}span.yellow {
	display: table;
    margin: 0 auto;
    line-height: 1.8;
    position: relative;
    font-size: 1.4rem;
}span.yellow:before {
    content: "";
    background: rgb(255 255 0 / 25%);
    height: 0.4rem;
    width: 100%;
    position: absolute;
    bottom: 0rem;
    z-index: -1;
}h2.content_h2.--center.--big_h2 {
	padding-left:0.8rem;
    font-size: 1.6rem;
}h2.content_h2.--center.--big_h2 {
    margin-left: -0rem;
}





section#project_section {
    position: relative;
    padding-bottom: 0rem;
}h2.project_h2 {
    background-image: url(../img/event.jpg);
    width: 100%;
    padding: 10rem 0 2rem;
    background-size: cover;
    background-position: center;
    margin: 0rem 0;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
}h2.project_h2 small {
    display: block;
    font-size: 0.8rem;
}span.name {
    display: block;
    margin-top: 3rem;
    font-size: 1rem;
}span.name b {
    display: block;
    font-size: 1.6rem;
}


.project_center_text {
    line-height: 2;
    margin: 2rem 1rem 6rem;
    font-weight: 400;
    letter-spacing: 0.1em;
}ul.project_ul {
    margin: 2rem 1rem 6rem;
}li.project_ul_sec {
    margin-top: 2rem;
}p.project_ul_text_p {
    line-height: 2;
    margin: 2rem 0;
}



ul.new_project_ul {
    margin: 2rem 1rem 8rem;
}li.new_pro_left {
    position: relative;
}.new_pro_left_text {
    background: rgb(255 255 255 / 90%);
    padding: 1.5rem;
    width: 27rem;
    font-size: 1rem;
    margin-top: -2rem;
    position: relative;
    margin-left: -1rem;
}.new_pro_right_text {
    background: rgb(255 255 255 / 90%);
    padding: 1.5rem;
    width: 27rem;
    font-size: 1rem;
    margin-top: -2rem;
    position: relative;
    margin-left: 2rem;
}li.new_pro_right {
    margin-right: -1rem;
	position: relative;
    margin: 2rem 0;
}p.new_pro_text_p {
    line-height: 1.6;
}


div#project_all {
    margin: 6rem 0rem 6rem;
}div#project_all_img {
    margin: 2rem 0rem;
}


.message_img {
	margin: 0rem 0 6rem;
    position: relative;
    height: 30rem;
    overflow: hidden;
}.message_img_main img {
    width: 100%;
    height: 30rem;
    object-fit: cover;
}.message_img_text {
	font-family: 'Noto Serif JP', serif;
    position: absolute;
    z-index: 1;
    padding: 2rem 0.8rem 0;
    top: 0;
    color: #fff;
    font-size: 1.1rem;
    width: 100%;
}p.kago_owner {
    margin: 2rem 1rem 2rem;
    line-height: 1.8;
}b.message_img_text_b {
    font-weight: 500;
    font-size: 2rem;
    display: block;
    margin-bottom: .5rem;
}




ul.owner_ul {
    margin: 6rem 1rem 0;
}ul.owner_ul li:nth-child(2) {
}span.owner_num {
    display: table;
    text-align: center;
    font-size: 4rem;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    color: #ab8458;
    padding-bottom: 1.6rem;
    border-bottom: 1px solid;
    position: relative;
    width: 28rem;
    margin: 0 auto 2rem;
}span.owner_num:before {
    content: "▼";
    font-size: 1.2rem;
    position: absolute;
    bottom: -1.2rem;
    margin-left: 1.5rem;
}.owner_img img {
    width: 100%;
    height: 18rem;
}h3.owner_h3 {
	text-align: center;
    margin: 2rem 0 4rem;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    color: #414141;
}

p.kago_owner_detail {
    margin: 2rem 1rem 4rem;
    line-height: 2;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #ab8458;
    font-size: 1rem;
}


ul.kago_owner_detail_list {
    margin: 2rem 1rem 4rem;
    position: relative;
}ul.kago_owner_detail_list li {
    display: flex;
    justify-content: space-between;
    align-items: self-start;
}span.kago_owner_detail_list_num {
	font-size: 3rem;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    color: #ab8458;
    margin-right: 2rem;
}ul.kago_owner_detail_list li {
    padding: 0 0 2rem;
    border-bottom: 1px solid rgb(189 160 128 / 41%);
    margin-bottom: 2rem;
}p.kago_owner_detail_p {
	font-size:1rem;
    line-height: 1.6;
}


div#footer_catch {
    background-image: url(../img/event.jpg);
    background-size: cover;
    background-position: bottom center;
    text-align: center;
    padding: 16rem 0 6rem;
    overflow: hidden;
    position: relative;
}.footer_catch_over_lay {
    background: rgb(0 0 0 / 38%);
    width: 100%;
    height: 50rem;
    position: absolute;
    top: 0;
}h2#footer_catch {
    font-family: 'Noto Serif JP', serif;
    position: relative;
    z-index: 1;
    color: #fff;
    letter-spacing: 0.2em;
    font-size: 1.8rem;
    line-height: 1.6;
}


footer {
    position: relative;
    padding: 12rem 1rem 18rem;
}.footer_map {
	position: absolute;
    opacity: 0.4;
    top: 4rem;
}h3.footer_h3 {
	font-size: 1.8rem;
    text-align: center;
    position: relative;
}h3.footer_h3 small {
    font-size: 0.8rem;
    display: block;
    font-weight: bold;
}h4#footer_h4 {
	position: relative;
    font-weight: bold;
    text-align: center;
    margin-top: 4rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
}



}