/* =============== お知らせ機能 =============== */
.mybox{
	background-color: #fff;	/* 背景色 */
	border: 4px solid #FFDF28;	/* 線の太さ・種類・色 */
	border-radius: 5px;
	margin: 40px 20px 20px 20px;	/* 外側の余白 上・右・左・下 */
	padding: 25px 20px 10px 20px;	/* 内側の余白 上・右・左・下 */
	position: relative;
   }
   .mybox:before{
	background-color: #FFDF28;	/* 吹き出し背景色 */
	border-radius: 5px;
	color: rgb(179, 9, 9);	/* 吹き出し文字色 */
	content: '重要なお知らせ';
	font-weight:bold;
	padding: 5px 20px;
	position: absolute;
	left: -10px;
	top: -20px;
   }
   .mybox:after{
	border-top: 12px solid #FFDF28;		/* 吹き出し三角部分の色 */
	border-right: 12px solid transparent;
	border-left: 12px solid transparent;
	content: '';
	position: absolute;
	top: 10px;
	left: 15px;
   }
  /* =============== end お知らせ機能 =============== */
#hero {
  position: relative;
  width: 100%;
  background: #53B54B;
  color: #fff; }
  #hero .inner {
    position: relative;
    overflow: hidden;
    margin: 3rem auto 0 auto;
    padding: 2rem;
    text-align: center;
    max-width: 1400px; }
    #hero .inner::after {
      content: '';
      display: inline-block;
      background: url(../img/display.png) no-repeat right bottom/contain;
      height: 801px;
      width: 400px;
      position: absolute;
      bottom: -8rem;
      right: 0;
      opacity: 0.3; }
      @media screen and (max-width: 767px) {
        #hero .inner::after {
          background-position: right -8rem bottom 3rem;
          max-width: 350px;
          width: 90%; } }
    #hero .inner .text {
      position: relative;
      z-index: 1;
      display: inline-block; }
    #hero .inner p {
      font-size: 1.5rem; }
    #hero .inner .bt {
      position: relative;
      z-index: 1;
      background: url(../img/arrow-simple-right-color.png) no-repeat 90% 50%;
      background-size: .8rem;
      background-color: #fff;
      letter-spacing: .5px;
      font-size: 1.2rem;
      text-align: center;
      width: 30%;
      margin: 0 auto; }
      #hero .inner .bt:hover {
        background: url(../img/arrow-simple-right.png) no-repeat 90% 50%;
        background-size: .8rem;
        background-color: #a9daa5; }
      #hero .inner .bt a {
        display: block;
        color: #53B54B;
        padding: 1rem; }
        #hero .inner .bt a:hover {
          color: #fff; }
  #hero .img-fluid {
    position: relative;
    z-index: 1;
    max-width: 377px;
    width: 100%; }

.mainCopy {
  position: relative;
  z-index: 1;
  font-size: 1.5rem;
  letter-spacing: .3rem;
  padding: 1rem 0; }

@media screen and (max-width: 980px) {
  .mainCopy {
    font-size: 1.2rem;
    letter-spacing: 0; }
  #hero .inner img {
    width: 80%; }
  #hero .inner .bt {
    background: url(../img/arrow-simple-right-color.png) no-repeat 90% 50%;
    background-size: .8rem;
    background-color: #fff;
    width: 85%; } }

@media screen and (max-width: 767px) {
  #hero .inner {
    padding: 2rem 1rem; } }

/* =============== end hero =============== */
/* =============== top content =============== */
ul, li {
  list-style: none; }

#top {
  /*background: url(../img/foot-bg.png) bottom repeat-x;*/
  background-color: #aed6bc;
  color: #313739; }
  #top .inner--security {
    margin: 0 auto;
    padding: 2rem 0 5rem 0;
    margin: 0 2rem; }
  #top .section__title {
    background-color: transparent;
    padding: 0;
    margin: 0; }
    #top .section__title img {
      width: 100%; }
  #top .box-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    #top .box-wrap .box {
      position: relative;
      background-color: #fff;
      border-radius: 2rem;
      letter-spacing: 5px;
      margin-top: 2rem;
      padding: 3rem;
      width: calc( 50% - 1.5rem); }
      #top .box-wrap .box:nth-of-type(odd) {
        margin-right: 3rem; }
      #top .box-wrap .box__title {
        font-size: 2rem;
        font-weight: bold;
        margin-bottom: 0;
        padding: .8rem 0; }
      #top .box-wrap .box__text {
        margin-bottom: 0;
        min-height: 5rem; }
      #top .box-wrap .box__note {
        font-size: 0.875rem;
        text-indent: -1em;
        padding-left: 1em; }
      #top .box-wrap .box figure {
        text-align: center; }
        #top .box-wrap .box figure img {
          height: auto;
          width: 100%; }

/* =============== end top =============== */
/* =============== bottom content =============== */
#bottom {
  background: url(../img/foot-bg.png) bottom repeat-x;
  background-color: #e4f4e9;
  background-size: 35rem;
  color: #313739; }
  #bottom .inner {
    max-width: 1400px;
    padding: 2rem 0 5rem 0; }
    #bottom .inner .box01, #bottom .inner .box02, #bottom .inner .box03, #bottom .inner .box01_2 {
      background: #FFF;
      border-radius: 2rem;
      padding: 3rem 5% 3rem 45%;
      margin: 2rem; }
    #bottom .inner .box01 {
      background: url(../img/top01-mobile-security.png) no-repeat 5% 50%;
      background-color: #FFF;
      background-size: 38%;
      border-radius: 2rem 2rem 0 0;
      margin-bottom: 0; }
      #bottom .inner .box01 .bt.spacer {
        background-color: transparent;
        height: 56px; }
    #bottom .inner .box01_2 {
      background-color: #FFF;
      border-radius: 0 0 2rem 2rem;
      margin-top: 0;
      padding: 0; }
      #bottom .inner .box01_2 .box__inner {
        padding: 50px 5% 3rem 5%; }
      #bottom .inner .box01_2 .title-h3 {
        position: relative;
        font-weight: bold;
        text-align: center; }
        #bottom .inner .box01_2 .title-h3::after {
          content: '';
          display: inline-block;
          height: 5px;
          width: 100px;
          position: absolute;
          bottom: -12px;
          left: 50%;
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%);
          background-color: #53B54B; }
      #bottom .inner .box01_2 .point {
        background-color: #53B54B;
        border-radius: 5px;
        padding: 16px;
        text-align: center; }
        #bottom .inner .box01_2 .point .text {
          color: #fff;
          font-size: 1.45rem;
          font-weight: bold;
          margin-bottom: 0; }
        #bottom .inner .box01_2 .point .line {
          display: inline-block; }
        #bottom .inner .box01_2 .point .text-strong {
          border-bottom: 2px solid #ffff00;
          color: #ffff00; }
    #bottom .inner .box-wrap {
      margin-top: 50px; }
    #bottom .inner .box-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: stretch;
      -ms-flex-align: stretch;
      align-items: stretch;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      #bottom .inner .box-list li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        background-color: #e4f4e9;
        border-radius: 15px;
        margin-bottom: 20px;
        width: 49%; }
        #bottom .inner .box-list li:nth-of-type(odd) {
          margin-right: 2%; }
        #bottom .inner .box-list li .img-wrap {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          padding: 26px; }
          #bottom .inner .box-list li .img-wrap img {
            max-width: 60px;
            width: 100%; }
        #bottom .inner .box-list li .detail-wrap {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -ms-flex-direction: column;
          flex-direction: column;
          margin-bottom: 0;
          padding: 26px 10px 26px 0; }
          #bottom .inner .box-list li .detail-wrap .title {
            font-size: 1.4rem;
            font-weight: bold;
            margin-bottom: 0; }
          #bottom .inner .box-list li .detail-wrap .text {
            font-size: 1rem;
            line-height: 1.5;
            margin-bottom: 0;
            min-height: 3rem; }
    #bottom .inner .box02 {
      background: url(../img/top02-rush-supp.png) no-repeat 5% 50%;
      background-color: #FFF;
      background-size: 38%; }
    #bottom .inner .box03 {
      background: url(../img/top03-benefits.png) no-repeat 5% 50%;
      background-color: #FFF;
      background-size: 38%; }
    #bottom .inner .sub-title {
      font-size: 1.2rem;
      font-weight: bold;
      padding: .8rem 0; }
    #bottom .inner .bt {
      background: url(../img/arrow-simple-right.png) 95% no-repeat;
      background-size: .8rem;
      background-color: #8c8c8c;
      border-radius: 1.5rem;
      margin: .5rem 10%;
      width: 80%; }
      #bottom .inner .bt a {
        color: #fff;
        display: block;
        font-weight: bold;
        letter-spacing: .3rem;
        padding: 1rem 0;
        text-align: center;
        width: 100%; }

@media screen and (max-width: 767px) {
  #bottom .inner {
    margin: 0 5%;
    width: auto; }
    #bottom .inner .box01, #bottom .inner .box01_2, #bottom .inner .box02, #bottom .inner .box03 {
      background: #FFF;
      border-radius: 2rem;
      padding: 1rem 5%;
      margin: 2rem .5rem; }
    #bottom .inner .box01 {
      background: url(../img/top01-mobile-security.png) no-repeat 50% 75%;
      background-color: #FFF;
      background-size: 80%;
      border-radius: 2rem 2rem 0 0;
      margin-bottom: 0;
      padding-bottom: 1px; }
      #bottom .inner .box01 .mark {
        background-color: inherit;
        margin: 1rem 10%;
        width: 80%; }
      #bottom .inner .box01 .bt.spacer {
        background: none;
        height: 0px;
        margin: 90% 10% 0; }
    #bottom .inner .box01_2 {
      border-radius: 0 0 2rem 2rem;
      margin-top: 0;
      padding-top: 0; }
      #bottom .inner .box01_2 .box__inner {
        padding: 0; }
      #bottom .inner .box01_2 .point {
        padding: 1rem 5%; }
        #bottom .inner .box01_2 .point .text {
          font-size: 1.3rem; }
    #bottom .inner .box-wrap {
      margin-top: 3rem; }
    #bottom .inner .box-list li {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      max-width: 286px;
      width: 100%; }
      #bottom .inner .box-list li .img-wrap {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 2rem 5% 1rem; }
      #bottom .inner .box-list li .detail-wrap {
        padding: 0 5% 1rem; }
        #bottom .inner .box-list li .detail-wrap .title {
          text-align: center; }
        #bottom .inner .box-list li .detail-wrap .text {
          margin-top: 1rem; }
    #bottom .inner .box02 {
      background: url(../img/top02-rush-supp.png) no-repeat 50% 65%;
      background-color: #FFF;
      background-size: 80%; }
    #bottom .inner .box03 {
      background: url(../img/top03-benefits.png) no-repeat 50% 65%;
      background-color: #FFF;
      background-size: 80%; }
    #bottom .inner .bt {
      margin: 90% 10% 1rem 10%;
      width: 80%; } }

/* =============== end bottom content =============== */
/* =============== foot content =============== */
#foot-content {
  background: url(../img/foot_content-bg.png) no-repeat 50% 50%;
  background-size: 2000px auto;
  background-color: #1C1022;
  letter-spacing: .1rem;
  padding: 3rem; }
  #foot-content .inner {
    background-color: rgba(64, 33, 15, 0.85);
    border-radius: 20px;
    max-width: 800px;
    margin: 0 auto; }
    #foot-content .inner .content {
      background: url(../img/aes_security.png) no-repeat 95% 50%;
      background-size: 8rem;
      color: #FFF;
      padding: 2rem 20% 2rem 2rem; }
      #foot-content .inner .content h3 {
        font-size: 1.5rem;
        margin: 0 0 1rem 0; }

@media screen and (max-width: 767px) {
  #foot-content {
    background: url(../img/foot_content-bg.png) no-repeat 50% 50%;
    background-size: cover; } }

@media screen and (max-width: 640px) {
  #foot-content {
    padding: 3rem 1rem; } }

@media screen and (max-width: 767px) {
  #foot-content .inner .content {
    background: url(../img/aes_security.png) no-repeat 95% 50%;
    background-size: 6rem;
    padding: 2rem 20% 2rem 2rem; } }

@media screen and (max-width: 640px) {
  #foot-content .inner .content {
    padding: 2rem 23% 2rem 2rem; } }

@media screen and (max-width: 480px) {
  #foot-content .inner .content {
    padding: 2rem 27% 2rem 2rem; } }

@media screen and (max-width: 375px) {
  #foot-content .inner .content {
    background: url(../img/aes_security.png) no-repeat 95% 50%;
    background-size: 5rem;
    padding: 2rem 30% 2rem 1rem; } }

@media screen and (max-width: 640px) {
  #foot-content .inner .content h3 {
    font-size: 1.3rem; } }

@media screen and (max-width: 375px) {
  #foot-content .inner .content h3 {
    font-size: 1.2rem; } }
