　@charset 'utf-8';


header,nav,footer,article,section{
  display: block;
}
*{
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  vertical-align: baseline;
}
html{
  height: 100%;
}
body{
  height: 100%;
  -webkit-font-feature-settings: 'palt' 1;
  font-feature-settings: 'palt' 1;
  line-height: 1.0;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
* html div#container{
  height: 100%;
}
div#container{
  position: relative;
  min-height: 100%;
}
body > #container{
  height: auto;
}
footer{
  position: absolute;
  position: static;
  left: 0;
  right: 0;
  margin: auto;
  bottom: 0;
}

ul,p,h1,h2,h3,h4,h5,dl,dt,dd,address{
  padding: 0px;
  margin: 0px;
}

h1,h2,h3,h4,h5{
  font-size: 1.0rem;
  font-weight: inherit;
}

address{
  font-style: normal;
}

ul,ol{
  list-style-type: none;
  font-size: 0px;
}

li{
  font-size: 1.0rem;
}

img{
  width: auto;
  max-width: 100%;
  backface-visibility: hidden;
  vertical-align: middle;
  border: 0;
}
table{
  border-collapse: collapse;
}
table,th,td{
  border: 0;
  padding: 0;
}
a{
  color: inherit;
  text-decoration: none;
  backface-visibility: hidden;
  -webkit-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
a:hover{
  opacity: 0.7;
  filter: alpha(opacity=70);
  text-decoration: none;
}

/*
a img{
  -webkit-transition: 0.5s ease-in-out;
  -ms-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}*/
map area{
  border: 0;
  outline: 0;
}
input, select, textarea, button {
  outline: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}
/*
@font-face{
  font-family: 'rounded-mgenplus-1cp';
  font-style: normal;
  font-weight: normal;
  src: url('./../font/rounded-mgenplus/rounded-mgenplus-1cp-regular.woff') format('woff');
}
*/

/*
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
*/

/* Layout */
div#container{
  overflow: hidden;
}
@media all and (max-width: 640px){
  div#container{
    padding-top: 33vw;
    padding-bottom: 14.4vw;
  }
}

.boxContents{
}
.boxMain{
}
/* /Layout */



/* Base Design */
html{
  font-size: 14px;
}
@media all and (max-width: 640px){
  html{
    font-size: 4.0vw;
  }
}

body {
  min-width: 1000px;
  margin-left: 200px;
  background-color: #fff;
  color: #1d1d1d;
  letter-spacing: 0.03em;
  font-family: "游ゴシック体",YuGothic,"游ゴシック","Yu Gothic","メイリオ",sans-serif;
  /*font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;*/
  font-size: 1.05em;
  font-weight: 500;
  /*-webkit-animation: dispBody 5s ease normal;
  animation: dispBody 5s ease normal;*/
}
@media all and (max-width: 640px){
  body {
    height: auto;
    min-width: 100%;
    margin-left: 0;
    font-size: 4.0vw;
  }
}

body.home {
  min-width: 1000px;
}
@media all and (max-width: 640px){
  body.home {
    min-width: 100%;
  }
}

@-webkit-keyframes dispBody {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes dispBody {
  from{ opacity: 0; }
  to{ opacity: 1; }
}

strong {
background: linear-gradient(transparent 40%, #ffff66 40%);
}



/*##### HmbMemu #####*/
.btnHmbMenu {
  display: none;
}
@media all and (max-width: 640px){
  .btnHmbMenu{
    position: fixed;
    z-index: 1002;
    top: 5.5vw;
    right: 4.8vw;
    display: inline-block;
    width: 8vw;
  }
}



/*##### SideFixedMenu #####*/
.boxSideFixedWrap {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  overflow-y: auto;
  width: 200px;
  height: 100%;
  background-color: #ae0b0f;
  /*
  background-image: url('./../../images/common/side-bg01.png');
  background-repeat: repeat-y;
  background-position: left top;
  background-size: auto auto;
*/
}
@media all and (max-width: 640px){
  .boxSideFixedWrap {
    overflow-y: visible;
    width: 100%;
    height: 33vw;
    background-color: #fff;
    background-image: none;
  }
}

.boxSideFixedWrap .logoSide01 {
  margin-bottom: 0.8em;
}
@media all and (max-width: 640px){
  .boxSideFixedWrap .logoSide01 {
    margin-bottom: 0;
  }
}

.boxSideFixedWrap .boxFixedTopCom {
  width: 90%;
  margin: 0 auto;
  padding: 8px 0 6px 0;
  /*border: 1px #000 solid;*/
  font-size: 1.0rem;
  color: #000;
}
@media all and (max-width: 640px){
  .boxSideFixedWrap .boxFixedTopCom {
    position: absolute;
    bottom: 0;
    left: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 10.5vw;
    padding: 0.5vw 0 0 0;
    border: 0;
    background-color: #ae0b0f;
    text-align: center;
    letter-spacing: 0.15em;
    font-size: 1.2rem;
    font-weight: 700;
    color: #fff;
  }
}

.boxSideFixed .ttl {
  /*margin-bottom: 27px;*/
}
@media all and (max-width: 640px){
  .boxSideFixed .ttl {
    width: 54.5vw;
    margin-bottom: 2vw;
    padding: 7.5vw 0 0 4.5vw;
  }
}

.boxSideFixed .ttl a {
  display: block;
  padding: 1.8em 0 1.4em 0;
  background-color: #fff;
  text-align: center;
}
@media all and (max-width: 640px){
  .boxSideFixed .ttl a {
    padding: 0;
  }
}

.boxSideBn {
  padding-bottom: 17px;
  background-color: #fff;
  text-align: center;
}
@media all and (max-width: 640px){
  .boxSideBn {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    padding-bottom: 0;
    padding-left: 4.5vw;
    text-align: left;
  }
}

.boxSideBn01 {
  margin-bottom: 14px;
}
@media all and (max-width: 640px){
  .boxSideBn01 {
    width: 28.5vw;
    margin-bottom: 0;
    margin-right: 0.7vw;
  }
}

.boxSideBn02 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
@media all and (max-width: 640px){
  .boxSideBn02 {
    -webkit-align-items: flex-end;
    align-items: flex-end;
  }
}

.boxSideBn02 .logoWrap {
  margin: 0 16px;
}
@media all and (max-width: 640px){
  .boxSideBn02 .logoWrap {
    margin: 0 2.2vw;
  }
  .boxSideBn02 .logoWrap:nth-child(1) {
    width: 10.5vw;
  }
  .boxSideBn02 .logoWrap:nth-child(2) {
    width: 8.5vw;
  }
}

.boxSideMenuTop {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  height: 83px;
}
@media all and (max-width: 640px){
  .boxSideMenuTop {
    display: none;
  }
}

.boxSideMenuTop .linkSideEntry01,
.boxSideMenuTop .linkSideRecruit01 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 50%;
  /*
  background-repeat: no-repeat, no-repeat;
  background-position: right bottom, left top;
  background-size: 15px auto, 100% 100%;*/
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 0.9em auto;
  text-align: center;
  color: #fff;
}


.boxSideMenuTop .linkSideRecruit01 {
  background-color: #df1c1c;
  /*background-image: url('./../../images/common/side-icn-arrow-recruit01.png'), url('./../../images/common/side-recruit-bg01.png');*/
  background-image: url('./../../images/common/side-icn-arrow-recruit01.png');
}
.boxSideMenuTop .linkSideRecruit01 .txt00 {
  display: block;
  line-height: 1.4;
  font-size: 1.15rem;
  font-weight: 500;
}

.boxSideMenuTop .linkSideEntry01 {
  background-color: #000204;
  /*background-image: url('./../../images/common/side-icn-arrow-entry01.png'), url('./../../images/common/side-entry-bg01.png');*/
  background-image: url('./../../images/common/side-icn-arrow-entry01.png');
}
.boxSideMenuTop .linkSideEntry01 .txt01 {
  display: block;
  margin-bottom: 5px;
  font-size: 1.1rem;
}
.boxSideMenuTop .linkSideEntry01 .txt02 {
  display: inline-block;
  line-height: 1.5;
  font-size: 0.88rem;
  font-weight: 500;
}

.boxSideTelno {
  text-align: center;
}
@media all and (max-width: 640px){
  .boxSideTelno {
    display: none;
  }
}

.boxSideTelno a {
  padding-left: 0.8em;
  background-image: url('./../../images/common/side-icn-tel01.png');
  background-repeat: no-repeat;
  background-position: left 0.4em;
  background-size: 0.65em auto;
  letter-spacing: 0;
  font-size: 2.0rem;
  font-weight: 400;
  color: #fff;
}

.boxSideMenu .boxLinkAccess {
  margin-top: -15px;
  margin-bottom: 5px;
  padding: 0 10px;
  text-align: center;
}
@media all and (max-width: 640px){
  .boxSideMenu .boxLinkAccess {
    display: none;
  }
}

.boxSideMenu .ulSideMenu {
  margin-top: 10px;
  margin-bottom: 20px;
}
@media all and (max-width: 640px){
  .boxSideMenu .ulSideMenu {
    position: fixed;
    z-index: 9;
    top: 33vw;/*18vw;*/
    left: 0;
    overflow-y: auto;
    display: none;
    width: 100%;
    height: 100%;
    margin-top: 0;
    margin-bottom: 5vw;
    padding-top: 3%;
    padding-bottom: 40vw;
    background-color: #efefed;/*#d2c8be;*/
  }
}

.boxSideMenu .ulSideMenu > li {
  text-align: center;
  line-height: 1.3;
  font-size: 1.1rem;
}
@media all and (max-width: 640px){
  .boxSideMenu .ulSideMenu > li {
    text-align: left;
    line-height: 1.0;
    font-size: 4.3vw;
  }
}

.boxSideMenu .ulSideMenu > li.short {
  letter-spacing: -0.07em;
}
@media all and (max-width: 640px){
  .boxSideMenu .ulSideMenu > li.short {
    letter-spacing: 0.03em;
  }
}

.boxSideMenu .ulSideMenu > li > a {
  display: block;
  width: 180px;
  margin: 0 auto;
  padding: 16px 0 14px 0;
  /*border-bottom: 1px rgba(255,255,266,0.5) solid;*/
  border-bottom: 1px #c8595c solid;
  color: #fff;
}
@media all and (max-width: 640px){
  .boxSideMenu .ulSideMenu > li > a {
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 3% 0 3% 3%;
    border: 0;
    opacity: 1;
    transition: none;
    font-weight: 500;
    color: #ae0b0f;
  }
}

.boxSideMenu .ulSideMenu > li > a .small {
  font-size: 0.8rem;
}

.ulSideSubMenu {
  position: fixed;
  z-index: 9;
  top: 0;
  left: 0;/*255px;*/
  overflow-y: auto;
  display: none;
  width: 261px;
  height: 100%;
  padding: 340px 0 0 1px;
  background-color: #e1e0e5;
  transition: left 0.8s;
}
.ulSideSubMenu > li {
  background-image: url('./../../images/common/side-recruit-cat-icn-arrow01.png');
  background-repeat: no-repeat;
  background-position: 87% center;
  background-size: auto auto;
  text-align: left;
  font-size: 1.23rem;
}
.ulSideSubMenu > li .txtNum {
  font-size: 0.95rem;
}
.ulSideSubMenu > li > a {
  display: block;
  width: 206px;
  margin: 0 auto;
  padding: 21px 5px 21px 14px;
  border-bottom: 1px #a1b3c1 solid;
  color: #112c5b;
}


.boxSideFixed .ulSideSns {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
@media all and (max-width: 640px){
  .boxSideFixed .ulSideSns {
    display: none;
  }
}

.boxSideFixed .ulSideSns > li {
  margin: 0 7px;
}
@media all and (max-width: 640px){
  .boxSideFixed .ulSideSns > li {
    margin: 0 3vw;
  }
}


.boxCommonTopComSp {
  display: none;
}
@media all and (max-width: 640px){
  .boxCommonTopComSp {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 8.4vw;
    background-color: #2a2a2a;
    letter-spacing: 0.12em;
    font-size: 0.72rem;
    font-weight: 700;
    color: #fff;
  }
}

@media all and (max-width: 640px){
  .boxCommonTopComSp .txt01 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 5.6vw;
  }
}

@media all and (max-width: 640px){
  .boxCommonTopComSp .txt02 {
    position: relative;
    top: -0.2vw;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    width: 5vw;
    height: 5vw;
    margin: 0 1vw 0 0.4vw;
    padding: 0.4vw 0 0 0.4vw;
    background-image: url('./../../images_sp/common/sp-header-icn-deco01.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    font-size: 0.8rem;
    font-weight: 700;
    color: #ec6200;
  }
}



/* Footer */
footer{
}

.boxFooterContactWrap {
  margin-bottom: 60px;
  padding-bottom: 37px;
  background-color: #f2f4f6;
  /*
  background-image: url('./../../images/common/footer-contact-bg01.png');
  background-repeat: repeat-y;
  background-position: center top;
  background-size: auto auto;*/
}
@media all and (max-width: 640px){
  .boxFooterContactWrap {
    margin-bottom: 12%;
    padding-bottom: 7%;
  }
}

.boxFooterContactWrap .ttlBase13 {
  margin-bottom: 27px;
}
@media all and (max-width: 640px){
  .boxFooterContactWrap .ttlBase13 {
    margin-bottom: 5%;
  }
}

.boxFooterContactWrap .boxBaseCom {
  margin-bottom: 2.4em;
  text-align: center;
  letter-spacing: 0.18em;
  font-size: 0.99rem;
}
@media all and (max-width: 640px){
  .boxFooterContactWrap .boxBaseCom {
    margin-bottom: 7%;
    font-size: 0.92rem;
  }
}

.boxFooterContact {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 0 50px;/* 0 120px;*/
}
@media all and (max-width: 640px){
  .boxFooterContact {
    display: block;
    padding: 0;
  }
}

.boxFooterContactL {
  width: 56%;
}
@media all and (max-width: 640px){
  .boxFooterContactL {
    width: 100%;
    margin-bottom: 6.8%;
  }
}

.boxFooterContactL .boxTelno {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  height: 52px;
  margin-bottom: 18px;
  padding-left: 62px;
  background-image: url('./../../images/common/footer-contact-icn-tel01.png');
  background-repeat: no-repeat;
  background-position: left 0.16em;
  background-size: auto auto;
  letter-spacing: 0.02em;
  font-size: 3.3rem;
}
@media all and (max-width: 640px){
  .boxFooterContactL .boxTelno {
    height: 15vw;
    margin-bottom: 5.5vw;
    padding-left: 18.3vw;
    background-image: url('./../../images_sp/common/sp-footer-contact-icn-tel01.png');
    background-size: 14.5vw auto;
    font-size: 2.9rem;
  }
}

.boxFooterContactL .boxTelno a {
  font-weight: 400;
}
@media all and (max-width: 640px){
  .boxFooterContactL .boxTelno a {
  }
}

.boxFooterContactL .dl01 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-bottom: 8px;
  letter-spacing: 0.12em;
  font-size: 0.97rem;
}
@media all and (max-width: 640px){
  .boxFooterContactL .dl01 {
    margin-bottom: 3%;
  }
}

.boxFooterContactL .dl01.no02 {
  margin-bottom: 15px;
}
@media all and (max-width: 640px){
  .boxFooterContactL .dl01.no02 {
    margin-bottom: 5%;
  }
}

.boxFooterContactL .dl01 > dt {
  padding-left: 20px;
  background-image: url('./../../images/common/footer-contact-icn-circle01.png');
  background-repeat: no-repeat;
  background-position: 5px center;
  background-size: auto auto;
}
@media all and (max-width: 640px){
  .boxFooterContactL .dl01 > dt {
    padding-left: 6vw;
    background-image: url('./../../images_sp/common/sp-footer-contact-icn-circle01.png');
    background-position: 2vw center;
    background-size: 1.7vw auto;
  }
}

.boxFooterContactL .dl01 > dt:after {
  content: '/';
  margin: 0 7px;
}
@media all and (max-width: 640px){
  .boxFooterContactL .dl01 > dt:after {
    content: '/';
    margin: 0 2vw;
  }
}

.boxFooterContactL .dl01 > dt .str2 {
  letter-spacing: 0.5em;
}

.boxFooterContactL .txtCaution {
  margin-bottom: 8px;
  line-height: 1.4;
  letter-spacing: 0.1em;
  font-size: 0.95rem;
  font-weight: 700;
  color: #ae0b0f;
}
@media all and (max-width: 640px){
  .boxFooterContactL .txtCaution {
    margin-bottom: 3%;
    line-height: 1.6;
    letter-spacing: 0.07em;
    font-size: 0.88rem;
  }
}

.boxFooterContactL .txtCaution.noMb {
  margin-bottom: 0;
}

.boxFooterContactR {
  width: 40%;
}
@media all and (max-width: 640px){
  .boxFooterContactR {
    width: 100%;
  }
}

.boxFooterContactR .boxMailFormWrap {
  border-bottom: 1px #329ee1 solid;
}

.boxFooterContactR .boxMailForm {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  height: 52px;
  margin-bottom: 12px;
  padding-left: 93px;
  background-image: url('./../../images/common/footer-contact-icn-mail01.png'),url('./../../images/common/footer-contact-icn-arrow01.png');
  background-repeat: no-repeat,no-repeat;
  background-position: left center,20% center;
  background-size: auto auto, auto auto;
  font-size: 2.1rem;
}
@media all and (max-width: 640px){
  .boxFooterContactR .boxMailForm {
    height: 15vw;
    margin-bottom: 4%;
    padding-left: 26.5vw;
    background-image: url('./../../images_sp/common/sp-footer-contact-icn-mail01.png'),url('./../../images_sp/common/sp-footer-contact-icn-arrow01.png');
    background-position: left center, 19.7vw center;
    background-size: 14.5vw auto, 2.5vw auto;
    font-size: 1.7rem;
  }
}

.boxFooterContactR .boxMailForm a {
  letter-spacing: 0.05em;
}
@media all and (max-width: 640px){
  .boxFooterContactR .boxMailForm a {
  }
}

.boxFooterContactR .boxMailForm a .small {
  font-size: 1.7rem;
}
@media all and (max-width: 640px){
  .boxFooterContactR .boxMailForm a .small {
    font-size: 1.45rem;
  }
}

.boxFooterBanner .boxBaseCom.no01 {
  margin-bottom: 34px;
  text-align: center;
  font-size: 1.05rem;
}
@media all and (max-width: 640px){
  .boxFooterBanner .boxBaseCom.no01 {
    margin-bottom: 0.9rem;
    text-align: left;
  }
}

.boxFooterBannerLR {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  margin-bottom: 5em;
  padding-bottom: 1.3em;
  background-image: url('./../../images/common/footer-bn-bg01.png');
  background-repeat: no-repeat;
  background-position: 95.5% bottom;
  background-size: auto auto;
}
@media all and (max-width: 640px){
  .boxFooterBannerLR {
    display: block;
    margin-bottom: 17%;
    /*padding-bottom: 0;*/
    background: none;
  }
}

.boxFooterBannerL {
  width: 62%;
}
@media all and (max-width: 640px){
  .boxFooterBannerL {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 8vw;
  }
}

.boxFooterBannerL img {
  /*max-width: none;
  margin-left: -45px;*/
  box-shadow: 1px 1px 14px 1px rgba(0,0,0,0.5);
}
@media all and (max-width: 640px){
  .boxFooterBannerL img {
    max-width: 100%;
    margin-left: 0;
    box-shadow: 1px 1px 5px 1px rgba(0,0,0,0.4);
  }
}

.boxFooterBannerR {
  width: 38%;
  /*padding-top: 85px;
  padding-bottom: 33px;*/
}
@media all and (max-width: 640px){
  .boxFooterBannerR {
    width: 90%;
    margin: 0 auto;
    padding-top: 0;
    padding-bottom: 0;
  }
}

.boxFooterBannerR .boxFooterSns {
  position: relative;
  margin-bottom: 65px;
  padding-left: 75px;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxFooterSns {
    margin-bottom: 5.0vw;
    padding-left: 0;
  }
}

.boxFooterBannerR .boxFooterSns .ttl {
  position: absolute;
  top: -50px;
  left: 113px;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxFooterSns .ttl {
    top: auto;
    bottom: 1.5vw;
    right: 6.5vw;
    width: 35.5%;
  }
}

.boxFooterBannerR .ulFooterSns {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .ulFooterSns {
    -webkit-justify-content: center;
    justify-content: center;
  }
}

.boxFooterBannerR .ulFooterSns > li {
  margin-right: 24px;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .ulFooterSns > li {
    width: 10.5vw;
    margin: 0 2.3vw;
  }
  .boxFooterBannerR .ulFooterSns > li img {
    width: 100%;
  }
}

.boxFooterBannerR .boxBaseCom.no01 {
  min-height: 120px;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxBaseCom.no01 {
    min-height: auto;
    margin-bottom: 0;
    /*
    background-image: url('./../../images_sp/common/sp-footer-banner-icn-deco01-l.png'), url('./../../images_sp/common/sp-footer-banner-icn-deco01-r.png');
    background-repeat: no-repeat, no-repeat;
    background-position: left bottom, right bottom;
    background-size: 7vw auto, 7vw auto;
    text-align: left;*/
    letter-spacing: 0.15em;
    font-size: 0.9rem;
  }
}

.boxFooterBannerR .boxLinkWrap {
  margin-bottom: -2.5em;
}

.boxFooterBannerR .boxLink {
  text-align: right;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxLink {
    text-align: center;
  }
}

.boxFooterBannerR .boxLink img {
  /*margin-right: -35px;*/
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxLink img {
    margin-right: 0;
  }
}

.boxFooterBannerR .boxLink.no01 {
  margin-bottom: 65px;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxLink.no01 {
    margin-bottom: 5%;
  }
}

.boxFooterBannerR .boxLink.no02,
.boxFooterBannerR .boxLink.no03 {
  margin-bottom: 16px;
}
@media all and (max-width: 640px){
  .boxFooterBannerR .boxLink.no02,
  .boxFooterBannerR .boxLink.no03 {
    margin-bottom: 5%;
  }
}

.boxFooterBanner .boxFooterBn01 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 63px;
}
@media all and (max-width: 640px){
  .boxFooterBanner .boxFooterBn01 {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 7vw;
    text-align: center;
  }
}

.boxFooterBanner .boxFooterBn01 a {
  margin-right: 24px;
}
@media all and (max-width: 640px){
  .boxFooterBanner .boxFooterBn01 a {
    width: 47.5%;
    margin-right: 5%;
    margin-bottom: 4.5vw;
  }
  .boxFooterBanner .boxFooterBn01 a:nth-child(2n) {
    margin-right: 0;
  }
}

.boxFooterBottomWrap {
  /*padding: 80px 0 0 0;
  border-top: 1px #0094d6 solid;*/
  background-color: #f2f4f6;
/*
  background-image: url('./../../images/common/footer-bg01.png');
  background-repeat: repeat-y;
  background-position: center top;
  background-size: auto auto;*/
}
@media all and (max-width: 640px){
  .boxFooterBottomWrap {
    padding: 0;
    /*border-top: 1px #1d26c8 solid;*/
    /*
    background-image: url('./../../images_sp/common/sp-footer-bottom-bg01.jpg');
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: auto 80.5vw;*/
  }
}

.boxFooterBottom {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 60px;
  padding: 73px 0 0 0;
  /*border-top: 1px #ae0b0f solid;*/
}
@media all and (max-width: 640px){
  .boxFooterBottom {
    display: block;
    margin-bottom: 7vw;
    padding: 0;
    border-top: 0;
  }
}

.boxFooterBottom .boxFooterMenu {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  width: 65%;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu {
    display: block;
    width: 100%;
    margin-bottom: 9%;
    background-color: #fff;
    /*
    background-image: url('./../../images_sp/common/sp-footer-bg01.png');
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;*/
  }
}

.boxFooterBottom .boxFooterMenu .ulFooterMenu.forPc:nth-child(1) {
  width: 29%;
}
.boxFooterBottom .boxFooterMenu .ulFooterMenu.forPc:nth-child(2) {
  width: 37%;
}
.boxFooterBottom .boxFooterMenu .ulFooterMenu.forPc:nth-child(3) {
  width: 34%;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forPc {
    display: none;
  }
}

.boxFooterBottom .boxFooterMenu .ulFooterMenu.no03.forPc {
  width: 36%;
}

.boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp {
  display: none;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
}

.boxFooterBottom .boxFooterMenu .ulFooterMenu > li {
  font-weight: 700;
}

.boxFooterBottom .boxFooterMenu .ulFooterMenu.forPc > li {
  margin-bottom: 21px;
  line-height: 1.3;
  font-size: 0.98rem;
}

.boxFooterBottom .boxFooterMenu .ulFooterMenu.forPc > li:last-child {
  margin-bottom: 0;
}

@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li {
    width: 50%;
    border-bottom: 1px #ae0b0f solid;
    text-align: center;
    font-size: 1.16rem;
  }
}

@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li.liUptotop {
    padding: 3.4vw 0 3.4vw 0;
    border-bottom: 0;
    background-color: #ae0b0f;
    color: #fff;
  }
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li.liUptotop .btnFooterUptotop {
    width: 7vw;
  }
}

@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li.liUptotop {
    width: 100%;
  }
}

@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li:nth-child(2),
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li:nth-child(4),
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li:nth-child(6),
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li:nth-child(8) {
    border-right: 1px #ae0b0f solid;
  }
}

@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li:nth-child(8),
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li:nth-child(9) {
    border-bottom: 0;
  }
}


@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li.liAlbum {
    /*width: 100%;
    border-right: 0;*/
    border-bottom: 0;
  }
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li.liDownload {
    border-bottom: 0;
  }
  .boxFooterBottom .boxFooterMenu .ulFooterMenu.forSp > li.liBlog {
    /*
    width: 100%;
    border-right: 0;
    border-bottom: 0;*/
  }
}


@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterMenu .ulFooterMenu > li a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 16.5vw;
    /*padding: 5vw 0;*/
    line-height: 1.35;
    color: #ae0b0f;
  }
}

.boxFooterBottom .boxFooterInfo {
  width: 34%;
  margin-top: -10px;
  text-align: left;
  /*font-weight: 700;*/
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo {
    width: 90%;
    margin: 0 auto;
  }
}

.boxFooterBottom .boxFooterInfo .ttl01 {
  margin-bottom: 1.2em;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  font-weight: 700;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo .ttl01 {
    margin-bottom: 6.5vw;
  }
}

.boxFooterBottom .boxFooterInfo .logoFooter01 {
  display: block;
  margin-right: auto;
  margin-bottom: 37px;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo .logoFooter01 {
    width: 74.5%;
    margin-bottom: 7.5vw;
  }
}

.boxFooterBottom .boxFooterInfo dl {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 12px;
  line-height: 1.4;
  font-weight: 700;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo dl {
    margin-bottom: 4%;
  }
}

.boxFooterBottom .boxFooterInfo dl.last {
  margin-bottom: 0;
}

.boxFooterBottom .boxFooterInfo dt {
  width: 14%;
  /*background-color: #000;*/
  text-align: center;
  font-size: 0.85em;
  /*color: #fff;*/
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo dt {
    width: 19%;
    font-size: 0.9rem;
  }
}

.boxFooterBottom .boxFooterInfo dt .txtTtl {
  display: inline-block;
  width: 100%;
  padding: 3px 0 1px 0;
  background-color: #ae0b0f;
  /*border: 1px #404040 solid;*/
  color: #fff;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo dt .txtTtl {
    padding: 2vw 0 1.2vw 0;
  }
}

.boxFooterBottom .boxFooterInfo dt .txtTtl .str2 {
  letter-spacing: 0.6em;
}

.boxFooterBottom .boxFooterInfo dt .txtTtl .str3 {
  letter-spacing: 0.3em;
}

.boxFooterBottom .boxFooterInfo dd {
  width: 86%;
  padding-left: 13px;
  padding-top: 0.1em;
  letter-spacing: 0.08em;
  font-size: 1.0rem;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo dd {
    width: 81%;
    padding-left: 4vw;
    padding-top: 0.3em;
    font-size: 0.98rem;
  }
}

.boxFooterBottom .boxFooterInfo dd .txtZipcode,
.boxFooterBottom .boxFooterInfo dd .txtAddress,
.boxFooterBottom .boxFooterInfo dd .txtMap {
  display: inline-block;
  letter-spacing: 0.03em;
}

.boxFooterBottom .boxFooterInfo dd .txtZipcode {
  margin-right: 5px;
}
@media all and (max-width: 640px){
  .boxFooterBottom .boxFooterInfo dd .txtZipcode {
    display: block;
    margin-right: 0;
    margin-bottom: 1vw;
  }
}

.boxFooterBottom .boxFooterInfo dd .txtAddress {
  display: inline;
}

.boxFooterBottom .boxFooterInfo dd .txtMap a {
  display: inline-block;
  border-bottom: 1px #5e554e solid;
}

.boxCopyrightWrap {
  /*padding: 18px 0;*/
  /*background-color: #e8e8e8;*/
  color: #ae0b0f;
}
@media all and (max-width: 640px){
  .boxCopyrightWrap {
    /*padding: 5vw 0;*/
  }
}

.boxCopyright {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  height: 72px;
  letter-spacing: 0.07em;
  text-align: center;
  font-size: 0.88rem;
  font-weight: 700;
}
@media all and (max-width: 640px){
  .boxCopyright {
    -webkit-justify-content: center;
    justify-content: center;
    height: 17.5vw;
    text-align: center;
    line-height: 1.6;
    letter-spacing: normal;
    font-size: 0.86rem;
  }
  .boxCopyright .markCopy {
    font-family: Verdana Roboto "Droid Sans";
  }
}

@media all and (max-width: 640px){
  .boxFooterFixedMenu {
    position: fixed;
    z-index: 1000;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

@media all and (max-width: 640px){
  .boxFooterFixedMenuF {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    width: 100%;
  }
}

@media all and (max-width: 640px){
  .boxFooterFixedMenuF a {
    width: 33.333333333%;
  }
}

@media all and (max-width: 640px){
  .boxFooterFixedMenuF a img {
    width: 100%;
  }
}




/*##### Common Navi01 ####*/
.boxCommonNavi01Wrap {
  margin-bottom: -8px;
  background-image: url('./../../images/common/common-navi01-bg01.jpg');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: auto auto;
}
@media all and (max-width: 640px){
  .boxCommonNavi01Wrap {
    margin-bottom: 0;
    padding: 6vw 0 2vw 0;
    background-color: #fbf1c7;
    background-image: url('./../../images_sp/common/sp-common-navi01-bg01.jpg'),url('./../../images_sp/common/sp-common-navi01-bg01-bottom.jpg');
    background-repeat: no-repeat, no-repeat;
    background-position: center top, center bottom;
    background-size: 100% auto, 100% auto;
  }
}

.boxCommonNavi01 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  height: 216px;
  padding-top: 10px;
}
@media all and (max-width: 640px){
  .boxCommonNavi01 {
    display: block;
    height: auto;
    padding-top: 0;
  }
}

.boxCommonNavi01L {
  width: 31%;
  padding-bottom: 10px;
  line-height: 1.65;
  font-size: 1.85rem;
  text-shadow: 1px 1px 1px #fff, -1px -1px 1px #fff, -1px 1px 1px #fff, 1px -1px 1px #fff;
}
@media all and (max-width: 640px){
  .boxCommonNavi01L {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 7.2vw;
    padding-bottom: 0;
    text-align: left;
    line-height: 1.5;
    font-size: 1.65rem;
  }
}

.boxCommonNavi01L img {
  max-width: none;
  /*margin-left: -30px;*/
}
@media all and (max-width: 640px){
  .boxCommonNavi01L img {
    max-width: 100%;
    width: 63%;
    /*margin-left: 20vw;*/
  }
}

.boxCommonNavi01L .txt01 {
  color: #d60000;
}
.boxCommonNavi01L .txt02 {
  color: #0b83c7;
}

.boxCommonNavi01R {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  width: 69%;
}
@media all and (max-width: 640px){
  .boxCommonNavi01R {
    display: block;
    width: 100%;
    margin-top: 0;
  }
}

.boxCommonNavi01R .boxCont01One {
  width: 31%;
}
@media all and (max-width: 640px){
  .boxCommonNavi01R .boxCont01One {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 5vw;
  }
}

.boxCommonNavi01R .boxCont01One a {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  height: 80px;
  margin-bottom: 15px;
  padding: 0 16px;
  border: 1px #ec6200 solid;
  background-color: #fbf1c7;
  background-image: url('./../../images/common/common-navi01-icn-arrow01.png');
  background-repeat: no-repeat;
  background-position: 93% center;
  background-size: auto auto;
  line-height: 1.38;
  letter-spacing: 0.15em;
  font-size: 1.25rem;
  font-weight: 700;
  color: #ec6200;
}
@media all and (max-width: 640px){
  .boxCommonNavi01R .boxCont01One a {
    height: 18vw;
    margin-bottom: 2.8vw;
    padding: 0 5vw;
    background-image: url('./../../images_sp/common/sp-common-navi01-icn-arrow01.png');
    background-repeat: no-repeat;
    background-position: 95% center;
    background-size: 2.2vw auto;
    font-size: 4.5vw;
  }
}

.boxCommonNavi01R .boxCont01One .boxBaseCom {
  margin-bottom: 0;
  line-height: 1.6;
  letter-spacing: 0.12em;
  font-size: 1.03rem;
  font-weight: 700;
}
@media all and (max-width: 640px){
  .boxCommonNavi01R .boxCont01One .boxBaseCom {
    font-size: 0.9rem;
  }
}

/*point-cheak*/
.boxEnvironment0104 .btn_position{
    position: absolute;
	cursor: pointer;
}

.boxEnvironment0104 .btnno01{
    right: 510px;
    top: 70px;
}
.boxEnvironment0104 .btnno02{
    right: 340px;
    top: 45px;
}
.boxEnvironment0104 .btnno03{
    right: 135px;
    top: 15px;
}

.boxPopupContIn h4.ttl{
	text-align: center;
	font-size: 1.7rem;
	margin-bottom: 1em;
}
.boxPopupContIn p.te01{
	text-align: left;
	font-size: 1.2rem;
	line-height: 1.5;
	margin-bottom: 1em;
}
.boxPopupContIn p.te02{
	text-align: left;
	font-size: 1.2rem;
	color: #ff0000;
	margin-bottom: 1em;
	font-weight: bold;
	line-height: 1.5;
}
.te03{
	color: #ff0000;
}

/*point-cheak_dl*/
.boxPopupContA .dl01 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  letter-spacing: 0.1em;
  font-size: 1.3rem;
}
@media all and (max-width: 640px){
.boxPopupContA .dl01 {
    letter-spacing: 0.15em;
    font-size: 0.85rem;
  }
}

.boxPopupContA .dl01 > dt {
  width: 27%;
  padding: 23px 0 23px 23px;/*23px 0 23px 20px*/
  /*border-bottom: 1px #e3ebe8 solid;*/
  background-color: #AE0B0F;
  color: #ffffff;/*#e7ff89*/
	text-align: center;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media all and (max-width: 640px){
.boxPopupContA .dl01 > dt {
    width: 31%;
    padding: 4vw 3vw;
  }
}

.boxPopupContA .dl01 > dd {
  width: 73%;
  padding: 23px 28px 23px 28px;
  /*border-bottom: 1px #29614d solid;*/
  background-color: #F2F4F6;
  color: #000000;/*#283446*/
}
@media all and (max-width: 640px){
.boxPopupContA .dl01 > dd {
    width: 69%;
    padding: 4vw 0 4vw 4vw;
  }
}