/* ================================================================================
	SP Default CSS 320px-979px
================================================================================ */
/* ================================================================================
	SP Default CSS 320px-959px
================================================================================ */
@media screen and (max-width: 959px) {
  /* ================================================================================
  	1:Main CSS
  ================================================================================ */
  /* 1:Hero Area CSS
  ================================================*/
  .hero-block {
    background: url(../../images/about/bg_hero_main_img01.jpg) center 0 no-repeat;
    background-size: cover;
  }
  /* 2:About Us CSS
  ================================================*/
  .sp-hide {
    display: none;
  }
  .page-ti img {
    width: 240px;
  }
  #about-us {
    margin-top: 40px;
  }
  #about-us .page-ti {
    margin-top: 50px;
  }
  #about-us .greeting {
    max-width: 800px;
    margin: 50px auto 0;
  }
  #about-us .greeting .row {
    padding: 0 10px;
  }
  #about-us .greeting .row .pic {
    position: relative;
    z-index: 1;
    text-align: center;
  }
  #about-us .greeting .row .pic .sec-ti {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 10;
    font-size: 1.6rem;
  }
  #about-us .greeting .row .detalist {
    margin-top: 20px;
  }
  #about-us .greeting .row .txt {
    margin-top: 20px;
  }
  #about-us .greeting .row .name {
    margin-top: 10px;
    text-align: right;
  }
  #about-us .philosophy {
    text-align: center;
    background-color: #FBFBF7;
    padding: 50px 20px;
  }
  #about-us .philosophy__ttl {
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 0.1em;
  }
  #about-us .philosophy__en {
    max-width: 112px;
    margin: 10px auto 0;
  }
  #about-us .philosophy__text {
    margin-top: 25px;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #432619;
  }
  #about-us .philosophy__content {
    background-color: #fff;
    border-radius: 10px;
    max-width: 720px;
    margin: 40px auto 0;
    padding: 35px;
  }
  #about-us .philosophy__content .logo {
    max-width: 325px;
    margin: 0 auto;
  }
  #about-us .philosophy__content .main {
    max-width: 180px;
    margin: 35px auto 0;
  }
  #about-us .philosophy__content .sub {
    max-width: 188px;
    margin: 40px auto 0;
  }
  #about-us .philosophy__message {
    font-size: 16px;
    line-height: 1.8;
    margin-top: 40px;
    letter-spacing: 0.05em;
    color: #432619;
  }
  #about-us .philosophy__download {
    margin-top: 50px;
  }
  #about-us .philosophy__download .ttl {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #432619;
  }
  #about-us .philosophy__download .btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 15px;
    margin-top: 20px;
  }
  #about-us .philosophy__download .btn__pdf {
    display: block;
    padding: 15px 40px 15px 63px;
    background-color: #76B5D5;
    border-radius: 50px;
    color: #fff;
    position: relative;
    text-decoration: none;
    -webkit-transition: opacity ease-in-out 0.3s;
    transition: opacity ease-in-out 0.3s;
    letter-spacing: 0.05em;
    width: 240px;
    text-align: left;
    font-size: 16px;
  }
  #about-us .philosophy__download .btn__pdf::before, #about-us .philosophy__download .btn__pdf::after {
    position: absolute;
    content: "";
  }
  #about-us .philosophy__download .btn__pdf::before {
    background: url(../../images/about/icon_pdf.svg) no-repeat;
    top: calc(50% - 12px);
    left: 30px;
    width: 21px;
    height: 30px;
  }
  #about-us .philosophy__download .btn__pdf::after {
    background: url(../../images/about/icon_arrow-right.svg) no-repeat;
    top: calc(50% - 5px);
    right: 17px;
    width: 12px;
    height: 11px;
  }
  #about-us .philosophy__download .btn__pdf:hover {
    opacity: 0.8;
  }
  #about-us .philosophy__download .btn__pdf span {
    font-size: 13px;
  }
  #about-us .new-logo {
    margin-top: 40px;
  }
  #about-us .new-logo .row .logo {
    text-align: center;
  }
  #about-us .new-logo .row .detalis {
    margin-top: 30px;
    padding: 0 10px;
  }
  #about-us .new-logo .row .detalis .detalis-ti {
    font-size: 1.6rem;
  }
  #about-us .new-logo .row .detalis .detalis-txt {
    margin-top: 20px;
  }
}
@media screen and (min-width: 640px) and (max-width: 959px) {
  /* 2:About Us CSS
  ================================================*/
  #about-us .vision .row:not(:first-of-type) {
    margin-top: 30px;
  }
  #about-us .vision .column {
    max-width: 600px;
    margin: 0 auto;
    margin-top: 30px;
  }
  #about-us .new-logo .row {
    padding: 0 10px;
  }
  #about-us .new-logo .row .detalis {
    margin-top: 0;
    padding-left: 40px;
  }
  #about-us .new-logo .row .detalis .detalis-ti {
    font-size: 1.8rem;
  }
}
/* ================================================================================
	Tablet&LandScape  CSS 960px-
================================================================================ */
/* ================================================================================
	LARGETABLET Default CSS 960px-
================================================================================ */
@media screen and (min-width: 960px) {
  /* ================================================================================
  	1:Main CSS
  ================================================================================ */
  /* 1:Hero Area CSS
  ================================================*/
  .hero-block {
    background: url(../../images/about/bg_hero_main_img01.jpg) center 0 no-repeat;
    background-size: cover;
  }
  /* 2:About Us CSS
  ================================================*/
  .pc-hide {
    display: none;
  }
  #about-us {
    margin-top: 45px;
  }
  #about-us .page-ti {
    margin-top: 40px;
  }
  #about-us .greeting {
    margin-top: 50px;
    padding: 0 20px;
  }
  #about-us .greeting .row .pic {
    position: relative;
    z-index: 1;
  }
  #about-us .greeting .row .pic .sec-ti {
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: 2.8rem;
  }
  #about-us .greeting .row .txt {
    max-width: 800px;
    margin: 35px auto 0;
  }
  #about-us .greeting .row .name {
    margin-top: 10px;
    text-align: right;
  }
  #about-us .philosophy {
    text-align: center;
    background-color: #FBFBF7;
    border-radius: 0 30px 30px 0;
    padding: 58px 0 71px;
  }
  #about-us .philosophy__ttl {
    font-size: 33px;
    font-weight: bold;
    letter-spacing: 0.1em;
  }
  #about-us .philosophy__en {
    max-width: 112px;
    margin: 0 auto;
  }
  #about-us .philosophy__text {
    margin-top: 25px;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #432619;
  }
  #about-us .philosophy__content {
    background-color: #fff;
    border-radius: 30px;
    max-width: 720px;
    margin: 40px auto 0;
    padding: 35px;
  }
  #about-us .philosophy__content .logo {
    max-width: 325px;
    margin: 0 auto;
  }
  #about-us .philosophy__content .main {
    max-width: 241px;
    margin: 35px auto 0;
  }
  #about-us .philosophy__content .sub {
    max-width: 188px;
    margin: 22px auto 0;
  }
  #about-us .philosophy__message {
    font-size: 16px;
    line-height: 1.8;
    margin-top: 40px;
    letter-spacing: 0.05em;
    color: #432619;
  }
  #about-us .philosophy__download {
    margin-top: 50px;
  }
  #about-us .philosophy__download .ttl {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #432619;
  }
  #about-us .philosophy__download .btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 30px;
    margin-top: 30px;
  }
  #about-us .philosophy__download .btn__pdf {
    display: block;
    padding: 15px 40px 15px 63px;
    background-color: #76B5D5;
    border-radius: 50px;
    color: #fff;
    position: relative;
    text-decoration: none;
    -webkit-transition: opacity ease-in-out 0.3s;
    transition: opacity ease-in-out 0.3s;
    letter-spacing: 0.05em;
    width: 240px;
    text-align: left;
    font-size: 16px;
  }
  #about-us .philosophy__download .btn__pdf::before, #about-us .philosophy__download .btn__pdf::after {
    position: absolute;
    content: "";
  }
  #about-us .philosophy__download .btn__pdf::before {
    background: url(../../images/about/icon_pdf.svg) no-repeat;
    top: calc(50% - 12px);
    left: 30px;
    width: 21px;
    height: 30px;
  }
  #about-us .philosophy__download .btn__pdf::after {
    background: url(../../images/about/icon_arrow-right.svg) no-repeat;
    top: calc(50% - 5px);
    right: 17px;
    width: 12px;
    height: 11px;
  }
  #about-us .philosophy__download .btn__pdf:hover {
    opacity: 0.8;
  }
  #about-us .philosophy__download .btn__pdf span {
    font-size: 13px;
  }
  #about-us .new-logo {
    margin-top: 50px;
  }
  #about-us .new-logo .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #about-us .new-logo .row .detalis-txt {
    max-width: 780px;
    padding-left: 40px;
  }
  #about-us .new-logo .row .detalis-txt:first-of-type {
    margin-top: 10px;
  }
  #about-us .new-logo .row .detalis-ti {
    padding-left: 40px;
    font-size: 1.8rem;
  }
}