
body {font-size: 0.8rem; line-height: 1.6;overflow-x: hidden;}
@media screen and (min-width: 768px) {body {font-size: 1rem; line-height: 2;letter-spacing: -0.05em;}}

#main_visual { width: 100%; height: 50vh; position: relative; background: url("../profile/images/header_sp.jpg") center 0/cover no-repeat; box-sizing: border-box; padding-top: 84px; margin: 0 0 50px; z-index: 1; }
@media screen and (min-width: 768px) { #main_visual { height: 70vh;padding-top: 98px;  background: url("../profile/images/header.jpg") center 88px/cover no-repeat;} }
#main_visual .container { position: relative; height: 100%; }
#main_visual #mv_logo { max-width: 970px; height: 100%; margin: 0 auto; display: none; position: relative; z-index: 9; }
@media screen and (min-width: 768px) { #main_visual #mv_logo { display: flex; align-items: center; justify-content: flex-start; } }
#main_visual #mv_logo img { max-height: 760px; height: 90%; width: auto; filter: blur(12px); opacity: 0; transition: 1.5s; transition-delay: 1.6s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateY(24px); }
#main_visual #mv_copy { width: 100%; height: 100%; position: absolute; top: 0; right: 0; display: flex; align-items: center; justify-content: center; z-index: 9; }
#main_visual #mv_copy img { width: 192px; filter: blur(12px); opacity: 0; transition: 1.5s; transition-delay: 1.6s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateY(18px); }
@media screen and (min-width: 768px) { #main_visual #mv_copy { width: 50%; } #main_visual #mv_copy img { transition-delay: 2.6s; } }
#main_visual.on #mv_logo img, #main_visual.on #mv_copy img { filter: blur(0); opacity: 1.0; transform: translateY(0); }
#main_visual.on #mv_pic { border-width: 0; }
#main_visual #pagettl {position: absolute;top: 60%;left: 50%;margin-right: -50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);}
#main_visual #pagettl img {height: 40px;}
@media screen and (min-width: 768px) {#main_visual #pagettl img {height: 80px;}}

#mainNav {display: none;}
@media screen and (min-width: 768px) {
#mainNav {max-width: 1200px;margin: auto auto 80px;display: block;background: url("../clean/images/line.png") no-repeat center bottom;}
#mainNav ul {padding: 0 0 30px 0;text-align: center;font-size: 17px;}
#mainNav ul li {margin: 20px 0;display: inline-block;}
#mainNav ul li a {padding: 5px;text-decoration: none;}
#mainNav ul li.active a {background: #006937;color: #fff}
}

#sec01 {width: 100%;margin: 0 auto;padding: 0 0 50px;}
#sec01 h3 {margin: auto auto 50px;text-align: center;color: #006937;font-size: 25px;letter-spacing: 0.1em;}
#sec01 ul {margin: auto auto 30px;display: -webkit-box;display: -moz-box;display: -webkit-flexbox;display: -moz-flexbox;display: -ms-flexbox;display: -webkit-flex;display: -moz-flex;display: flex;flex-wrap: wrap;justify-content: center;}
#sec01 ul li:nth-child(1) {width: 70%;margin: auto 70px 20px auto;}
#sec01 ul li:nth-child(2) {width: 90%;margin: auto;}
#sec01 ul li:nth-child(2) h4 {width: 70%;margin: auto auto 40px;}
#sec01 ul li:nth-child(2) ol {padding: 20px;list-style: none;}
#sec01 ul li:nth-child(2) ol li {position: relative;}
#sec01 ul li:nth-child(2) ol li::before {content: "＊";position: absolute;top: 0;left: -20px;}
#sec01 ul li:nth-child(2) ol li:nth-child(1), #sec01 ul li:nth-child(2) ol li:nth-child(2) {width: 100%;}
#sec01 dl {width: 90%;margin: auto;display: -webkit-box;display: -moz-box;display: -webkit-flexbox;display: -moz-flexbox;display: -ms-flexbox;display: -webkit-flex;display: -moz-flex;display: flex;flex-wrap: wrap;justify-content: space-between;}
#sec01 dl dt {width: 35%;padding: 15px 0 10px 0;background: url("../profile/images/pLine.png") repeat-x bottom;color: #006937;font-weight: 600;}
#sec01 dl dd {width: 65%;padding: 15px 0 10px 0;background: url("../profile/images/pLine.png") repeat-x bottom;}
@media screen and (min-width: 768px) { 
#sec01 {margin: 0 auto;padding: 0 0 100px;}
#sec01 h3 {font-size: 40px;}
#sec01 ul {max-width: 1200px;margin: auto auto 80px;justify-content: space-between;}
#sec01 ul li:nth-child(1) {width: 35%;}
#sec01 ul li:nth-child(2) {width: 55%;}
#sec01 ul li:nth-child(2) h4 {margin: 0 0 40px;}
#sec01 dl {max-width: 1200px;}
#sec01 dl dt {width: 20%;}
#sec01 dl dd {width: 80%;}
}

#sec02 {width: 100%;margin: auto;padding: 80px 0;background: rgba(239,255,226,0.5);}
#sec02 h3 {margin: auto auto 50px;text-align: center;color: #006937;font-size: 25px;letter-spacing: 0.1em;}
#sec02 dl {width: 90%;margin: auto;display: -webkit-box;display: -moz-box;display: -webkit-flexbox;display: -moz-flexbox;display: -ms-flexbox;display: -webkit-flex;display: -moz-flex;display: flex;flex-wrap: wrap;justify-content: space-between;}
#sec02 dl dt {width: 30%;padding: 15px 0 30px 0;position: relative;color: #006937;font-size: 16px;font-weight: 600;line-height: 1.3;}
#sec02 dl dt::after {content: "";width: 3px;height: 100%;display: block;position: absolute;top: 0;right: -10px;background: url("../profile/images/historyLine.png") repeat-y 0 0;}
#sec02 dl dd {width: 60%;padding: 15px 0 30px 0;position: relative;}
#sec02 dl dd::before {content: "";width: 22px;height: 23px;display: block;position: absolute;top: 14px;left: -37px;background: url("../profile/images/stamp.png") no-repeat 0 0/cover;}
#sec02 dl dd h4 {margin-bottom: 15px;color: #006937;font-size: 15px;font-weight: 600;line-height: 1.3;}
@media screen and (min-width: 768px) { 
#sec02 {padding: 100px 0;}
#sec02 h3 {font-size: 40px;}
#sec02 dl {max-width: 1200px;}
#sec02 dl dt {width: 20%;}
#sec02 dl dt {font-size: 20px;}
#sec02 dl dd {width: 80%;}
#sec02 dl dd h4 {font-size: 18px;}
#sec02 dl dt::after {right: 70px;}
#sec02 dl dd::before {width: 28px;height: 30px;top: 12px;left: -85px;}
}
