/*  #mainImg
================================================ */
#mainImg { background-image: url(../img/about/mainimg_sp.png); }

@media screen and (min-width: 600px) { #mainImg { background-image: url(../img/about/mainimg_pc.png); } }

/*  #about
================================================ */
#vision .inner { padding-top: 35px; padding-bottom: 45px; }

#vision .section { margin-top: 15px; padding-bottom: 15px; }

#vision .sectit { position: relative; padding-bottom: 9px; font-size: 2.3rem; font-weight: 700; line-height: 1.6; }

#vision .sectit:before { content: ''; position: absolute; bottom: 0; left: 0; width: 100px; height: 1px; background: #d5d5d5; }

#vision .txt { padding-top: 5px; }

#vision .txt .bold { font-weight: 700; }

@media screen and (min-width: 600px) { #vision .inner { padding-top: 75px; padding-bottom: 120px; }
  #vision .bg { overflow: hidden; }
  #vision .bg:before { content: ''; position: absolute; right: 130px; bottom: -100px; width: 512px; height: 512px; background: url(../img/common/bg_logo01.png) no-repeat; background-size: contain; }
  #vision .section { margin-top: 47px; }
  #vision .sectit { padding-bottom: 15px; font-size: 3.2rem; }
  #vision .txtWrap { padding: 0 0 0 110px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; height: 500px; }
  #vision .txt { padding-top: 25px; } }

#message { background: url(../img/about/bg_message_sp.png) no-repeat center; background-size: cover; color: #fff; }

#message .inner { padding-top: 25px; padding-bottom: 30px; }

#message .leadTxt { padding-top: 8px; font-size: 2.1rem; font-weight: 700; line-height: 1.6; }

#message .txtWrap { margin-top: 5px; }

#message .txtWrap .txt span { font-weight: 700; }

#message .txtWrap .txt + .txt { padding-top: 30px; }

@media screen and (min-width: 600px) { #message { background: url(../img/about/bg_message_pc.png) no-repeat center; background-size: cover; }
  #message .inner { padding-top: 93px; padding-bottom: 100px; }
  #message .leadTxt { padding-top: 30px; text-align: center; font-size: 3.2rem; }
  #message .txtWrap { margin-top: 31px; padding: 0 200px; }
  #message .txtWrap .txt span { font-weight: 700; }
  #message .txtWrap .txt + .txt { padding-top: 36px; } }

#information .inner { padding-top: 28px; padding-bottom: 50px; }

#information .logo { margin-top: 16px; padding: 27px; border: 2px solid #ebebeb; background: #fff; text-align: center; }

#information .logo img { width: 215px; }

#information .table { margin-top: 20px; }

#information dl { margin-top: 10px; }

#information dl + dl { margin-top: 15px; }

#information dl dt { position: relative; padding-left: 25px; font-weight: 700; }

#information dl dt:before { content: ''; position: absolute; left: 0; top: 10px; width: 15px; height: 2px; background: #a2005b; }

#information dl dd { padding-top: 15px; }

#information .officer dl { margin-top: 0; }

#information .officer dl + dl { margin-top: 10px; }

#information .officer dl dd { padding-top: 0px; }

#information .iso dl { margin-top: 0; }

#information .iso dl + dl { margin-top: 10px; }

#information .iso dl dd { padding-top: 0px; }

#information .map { margin-left: 15px; line-height: 1; }

#information .map a { position: relative; bottom: 2px; padding: 5px 30px; background: #fff; border: 1px solid #d5d5d5; text-decoration: none; }

#information .map a:before { content: ''; position: absolute; top: 50%; right: 10px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); width: 10px; height: 10px; background: url(../img/common/ico_window01.png) no-repeat; background-size: contain; }

#information .list li { position: relative; padding-left: 20px; }

#information .list li:before { content: ''; display: inline-block; position: absolute; top: 7px; left: 0; width: 10px; height: 10px; border-radius: 50%; background-color: #a2005b; }

#information .attention { margin-top: 5px; padding-left: 1em; font-size: 1.2rem; color: #9a9a9a; line-height: 1.5; text-indent: -1em; }

@media screen and (min-width: 600px) { #information .inner { padding-top: 100px; padding-bottom: 130px; }
  #information .logo { margin-top: 46px; padding: 99px; }
  #information .logo img { width: 412px; }
  #information .table { margin-top: 50px; }
  #information dl { margin-top: 0; }
  #information dl + dl { margin-top: 25px; }
  #information dl dt:before { top: 10px; }
  #information .officer dl { margin-top: 0; }
  #information .officer dl + dl { margin-top: 25px; }
  #information .officer dl dd { padding-top: 5px; }
  #information .iso dl { margin-top: 0; }
  #information .iso dl + dl { margin-top: 25px; }
  #information .iso dl dd { padding-top: 5px; }
  #information .map { margin-left: 20px; }
  #information .map a { padding: 5px 25px; }
  #information .list li { padding-left: 25px; }
  #information .list li + li { margin-top: 7px; }
  #information .attention { margin-top: 15px; font-size: 1.4rem; } }
