@charset "UTF-8";
/* =========================================================
 Overwrite
========================================================= */
/* base
--------------------------------------------------------- */
html {
  scroll-padding-top: 120px;
}
@media (max-width: 768px) {
  html {
    scroll-padding-top: 0;
  }
  body {
    overflow-x: hidden;
  }
}

/* header
--------------------------------------------------------- */
.is-gmenu-open #headNav,
.is-gmenu-open #gNav {
  z-index: 30001;
}

/* contents
--------------------------------------------------------- */

@media (min-width: 769px) {
  #topicPath {
    padding-bottom: 15px;
  }
  #contents .headSection {
    box-sizing: border-box;
    padding-top: 15px;
    background-color: #fff;
  }
  #contents .headSection .leftArea .title small {
    display: inline-block;
    font-size: 16px;
    vertical-align: baseline;
  }
}
@media (max-width: 768px) {
  #contents {
    position: static !important;
    padding: 0;
  }
  #contents .headSection {
    position: static;
    padding: 0 2%;
    margin-bottom: 0;
  }
  #contents .headSection .innerBlock {
    width: auto;
  }
  #contents .headSection .leftArea {
    float: none;
    width: 100%;
    margin-bottom: 13px;
  }
  #contents .headSection .leftArea .title {
    display: block;
    padding: 0;
    background: none;
    font-size: 24px;
    font-weight: bold;
  }
  #contents .headSection .leftArea .title small {
    display: block;
    margin-top: .2em;
    font-size: 14px;
  }
  #contents .headSection .rightArea {
    display: block;
    margin-bottom: 15px;
  }
  #contents .headSection .ttl {
    float: none;
    width: auto;
    text-align: center;
  }
  #contents .headSection .ttl p.productsLogo {
    display: block;
    margin-bottom: 0.2em;
    padding: 0;
    font-weight: bold;
  }
}

/* mainSection
--------------------------------------------------------- */
@media (max-width: 768px) {
  #contents .mainSection {
    box-sizing: border-box;
    margin: 20px 0;
    padding: 0 15px;
    width: 100%;
  }
}

/* =========================================================
 marunouchi
========================================================= */
/* p-marunouchi
--------------------------------------------------------- */
@media (max-width: 960px) {
  .p-marunouchi {
    font-size: calc(0.775rem + 0.375vw) ;
  }
}
.p-marunouchi p + p {
  margin-top: 1.25em;
}
.p-marunouchi p, .p-marunouchi dd, .p-marunouchi li {
  line-height: 1.625;
}
@media (max-width: 768px) {
  .p-marunouchi {
    font-feature-settings: "pkna";
  }
}

/* =========================================================
 layout
========================================================= */
/* section
--------------------------------------------------------- */
.l-section {
  padding: 80px 0;
}
.l-section--secondary {
  background: #eaecee;
}
.l-section--tertiary {
  padding: 1.25em;
  background: #333;
}
.l-section--narrow {
  padding: 60px 0;
}
.l-section__inner {
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 1240px;
  width: 100%;
}

.bnrWidth img{
  max-width:100%;
  width:auto;
  }

@media (max-width: 768px) {
  .l-section {
    padding: 30px 0;
  }
  .l-section--tertiary {
    padding: 1em;
  }
  .l-section__inner {
    padding: 0 15px;
  }
  .l-section--narrow {
    padding: 30px 0;
  }
}

/* sub-section
--------------------------------------------------------- */
.l-sub-section + .l-sub-section {
  margin-top: 60px;
}
.l-sub-section__body {
  padding: 60px;
  background: #fff;
}
@media (max-width: 768px) {
  .l-sub-section + .l-sub-section {
    margin-top: 30px;
  }
  .l-sub-section__body {
    padding: 25px 20px;
  }
}

/* =========================================================
 heading
========================================================= */
.c-heading {
  margin: 0 0 1em 0;
  line-height: 1.25;
}
.c-heading--h1 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.5em;
  font-size: 1.75rem;
}
@media (max-width: 960px) {
  .c-heading--h1 {
    font-size: calc(0.85rem + 1.5vw) ;
  }
}
.c-heading--h1--with-icn {
  justify-content: flex-start;
  align-items: center;
}
.c-heading--h1--with-icn i {
  display: inline-block;
  margin-left: .75em;
  padding: .5em 1em;
  background: #e3e3e3;
  font-size: 1rem;
  font-style: normal;
}
@media (max-width: 960px) {
  .c-heading--h1--with-icn i {
    font-size: calc(0.775rem + 0.375vw) ;
  }
}
.c-heading--h2 {
  margin-bottom: 1.5em;
  font-size: 1.75rem;
  text-align: center;
}
.c-heading--h2b {
  margin-bottom: 1em;
  font-size: 34px;
  text-align: left;
}
@media (max-width: 960px) {
  .c-heading--h2 {
    font-size: calc(0.85rem + 1.5vw) ;
  }
}
@media only screen and (max-width: 767px) {
  .c-heading--h2b {
    margin-bottom: .75em;
    font-size: 24px;
  }
}

.c-heading--h3 {
  font-size: 1.5rem;
}
@media (max-width: 960px) {
  .c-heading--h3 {
    font-size: calc(0.825rem + 1.125vw) ;
  }
}
.c-heading--h4 {
  font-size: 1.25rem;
}
@media (max-width: 960px) {
  .c-heading--h4 {
    font-size: calc(0.8rem + 0.75vw) ;
  }
}
.c-heading--h5 {
  font-size: 1.125rem;
}
@media (max-width: 960px) {
  .c-heading--h5 {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.c-heading--personal {
  margin-bottom: 1.5em;
}
.c-heading--access span, .c-heading--infomation span, .c-heading--contact span, .c-heading--floormap span {
  display: block;
}
.c-heading--access span:lang(en), .c-heading--infomation span:lang(en), .c-heading--contact span:lang(en), .c-heading--floormap span:lang(en) {
  margin-bottom: .1em;
  font-size: 2.75rem;
}
@media (max-width: 960px) {
  .c-heading--access span:lang(en), .c-heading--infomation span:lang(en), .c-heading--contact span:lang(en), .c-heading--floormap span:lang(en) {
    font-size: calc(0.95rem + 3vw) ;
  }
}
.c-heading--access span:lang(ja), .c-heading--infomation span:lang(ja), .c-heading--contact span:lang(ja), .c-heading--floormap span:lang(ja) {
  font-size: 1.125rem;
}
@media (max-width: 960px) {
  .c-heading--access span:lang(ja), .c-heading--infomation span:lang(ja), .c-heading--contact span:lang(ja), .c-heading--floormap span:lang(ja) {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.c-heading--bdb {
  margin-bottom: 1.5em;
  padding-bottom: .3em;
  border-bottom: solid 2px #333;
}
.c-heading__icn {
  display: inline-block;
  margin-right: .5em;
}
.c-heading__icn i {
  display: inline-block;
  padding: .75em 1.5em;
  background: #e3e3e3;
  font-size: 1.125rem;
  font-style: normal;
}
@media (max-width: 960px) {
  .c-heading__icn i {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.c-heading__en {
  display: inline-block;
  margin-left: 1em;
  font-size: 1rem;
}
@media (max-width: 960px) {
  .c-heading__en {
    font-size: calc(0.775rem + 0.375vw) ;
  }
}
@media (max-width: 768px) {
  .c-heading--personal img {
    width: 120px;
    height: auto;
  }
}

/* =========================================================
 btn�@
========================================================= */
/* c-head-btns
--------------------------------------------------------- */
.c-head-btns {
  overflow: hidden;
}
.c-head-btns li {
  float: left;
}
.c-head-btns li + li {
  margin-left: 2px;
}
.c-head-btns__link {
  transition: all 0.25s ease;
  display: block;
  width: 130px;
  height: 30px;
  line-height: 30px;
  background: #333;
  font-size: 13px;
  color: #fff !important;
  text-decoration: none !important;
  text-align: center;
}
.c-head-btns__link span {
  display: inline-block;
}
.c-head-btns__link > span {
  padding-left: 20px;
  background: url(/katsuyou/photo/premium/common/images/lnav/icn_arw_btns.png) no-repeat left center;
}
.c-head-btns__link--access {
  width: 170px;
}
.is-floormap .c-head-btns__link--floormap, .is-access .c-head-btns__link--access, .is-contact .c-head-btns__link--contact, .c-head-btns__link:hover {
  background-color: #5f5f5f;
}
@media (max-width: 768px) {
  .c-head-btns {
    display: table;
    margin: 0 auto;
  }
  .c-head-btns li + li {
    margin-left: 10px;
  }
}

/* c-btn
--------------------------------------------------------- */
.c-btn {
  box-sizing: border-box;
  display: inline-block;
  padding: 1.25em 4em;
  background: #333;
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff !important;
  text-decoration: none !important;
  text-align: left;
  line-height: 1.35;
}
@media (max-width: 960px) {
  .c-btn {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.c-btn span {
  display: inline-block;
}
.c-btn > span {
  padding-left: 25px;
  background: url(/katsuyou/photo/premium/common/images/icn_btn.png) no-repeat left 0.2em;
}
.c-btn > span + img {
  display: inline-block;
  vertical-align: 0;
  margin-left: .25em;
}
.c-btn--block {
  display: block;
  padding: 1.25em 1em;
  text-align: center;
}
.c-btn--sm {
  padding: 1.1em 3em;
  font-size: 1rem;
}
@media (max-width: 960px) {
  .c-btn--sm {
    font-size: calc(0.775rem + 0.375vw) ;
  }
}
.c-btn--shin {
  padding: 0.6em 3em;
}
.c-btn--block.c-btn--sm {
  padding-left: 1em;
  padding-right: 1em;
}
.c-btn.is-disabled {
  pointer-events: none;
}
.c-btn--disabled {
  pointer-events: none;
  opacity: .7;
}
@media (max-width: 768px) {
  .c-btn {
    padding: 1.25em;
  }
  .c-btn--block--sp {
    display: flex;
    justify-content: center;
  }
}

/* =========================================================
 link
========================================================= */
.c-link {
  display: inline-block;
  font-size: 1rem;
  font-weight: normal;
}
@media (max-width: 960px) {
  .c-link {
    font-size: calc(0.775rem + 0.375vw) ;
  }
}
.c-link > img {
  display: inline-block;
  vertical-align: 0;
  margin-left: .25em;
}
.c-link--detail {
  padding-left: 25px;
  background: url(/katsuyou/photo/premium/common/images/icn_link-b.png) no-repeat left 0.3em;
}
.c-link--news {
  padding-left: 25px;
  background: url(/katsuyou/photo/premium/common/images/icn_link-b.png) no-repeat left center;
  font-size: 1.125rem;
}
@media (max-width: 960px) {
  .c-link--news {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.c-link--anchor {
  padding-right: 23px;
  background: url(/katsuyou/photo/premium/common/images/icn_link-a.png) no-repeat right center;
}
.c-link--inline {
  display: inline;
}
.c-link--arw {
  position: relative;
  padding-left: 1.25em;
}
.c-link--arw::before {
  content: '';
  width: .45em;
  height: .45em;
  border-top: solid 2px #0c5db2;
  border-right: solid 2px #0c5db2;
  position: absolute;
  left: 0;
  top: .5em;
  transform: rotate(45deg);
}

/* =========================================================
 visual
========================================================= */
/* c-visual
--------------------------------------------------------- */
.c-visual {
  position: relative;
}
.c-visual__inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.c-visual__title {
  position: relative;
  margin: 0 auto;
  max-width: 960px;
  width: 100%;
  height: 100%;
}
.c-visual__title p {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.c-visual__title span {
  display: inline-block;
  padding: 10px 20px;
  background: #fff;
  line-height: 1;
}
.c-visual__title span:lang(en) {
  margin-bottom: 7px;
  font-size: 4.8125rem;
}
@media (max-width: 960px) {
  .c-visual__title span:lang(en) {
    font-size: calc(1.15625rem + 6.09375vw) ;
  }
}
.c-visual__title span:lang(ja) {
  font-size: 1.5rem;
  font-weight: bold;
}
@media (max-width: 960px) {
  .c-visual__title span:lang(ja) {
    font-size: calc(0.825rem + 1.125vw) ;
  }
}
.c-visual__title div {
  position: absolute;
  right: 0;
  bottom: -2em;
  font-size: 0.75rem;
}
.c-visual--business .c-visual__title span {
  color: #6c7a9f;
}
.c-visual--production .c-visual__title span {
  color: #b8bc5b;
}
.c-visual--personal .c-visual__title span {
  color: #a76d85;
}
@media (max-width: 768px) {
  .c-visual {
    margin-bottom: 1em;
  }
  .c-visual__title p {
    width: 100%;
    max-width: 60%;
  }
  .c-visual__title p img {
    width: 100%;
    height: auto;
  }
  .c-visual--epsite .c-visual__title span:lang(en) img {
    width: 40vw;
    height: auto;
  }
}

/* =========================================================
 expander
========================================================= */
.c-expander__title {
  transition: opacity 0.25s ease;
  display: flex;
  padding: 1em 2em 1em 1.5em;
  background-color: #eaecee;
  background-image: url(/katsuyou/photo/common/images/icn_plus-pc.png);
  background-repeat: no-repeat;
  background-position: right 1em center;
  cursor: pointer;
}
.c-expander__title .c-heading {
  margin-bottom: 0;
}
.c-expander__title:hover {
  opacity: 0.7;
}
.c-expander.is-open .c-expander__title {
  background-image: url(/katsuyou/photo/common/images/icn_minus-pc.png);
}
.c-expander.is-open .c-expander__body {
  transition: max-height 0.8s 0s cubic-bezier(0.675, 0.17, 0.245, 0.795);
  max-height: 5000px;
}
.c-expander__body {
  transition: max-height 0.2s 0s cubic-bezier(0.675, 0.17, 0.245, 0.795);
  overflow: hidden;
  max-height: 0px;
}
.c-expander__body > div {
  padding-top: 2em;
  overflow: hidden;
}
.c-expander__list {
  margin: 0 -2em 0 0;
  overflow: hidden;
}
.c-expander__list li {
  box-sizing: border-box;
  float: left;
  margin-bottom: 1em;
  padding: 0 2em 0 0;
  font-size: 0.9375rem;
  line-height: 1.35;
}
@media (max-width: 960px) {
  .c-expander__list li {
    font-size: calc(0.76875rem + 0.28125vw) ;
  }
}
.c-expander__list li > a, .c-expander__list li > span:not([class]) {
  display: inline-block;
  padding: 0 0 0 21px;
  background: url(/common/images/ico_link_01.gif) no-repeat left 0.1em;
}
.c-expander__list li > a + sup, .c-expander__list li > span:not([class]) + sup {
  display: inline-block;
  font-size: 0.75rem;
  vertical-align: top;
}
.c-expander__list li > a[target="_blank"] {
  position: relative;
}
.c-expander__list li > a[target="_blank"]::after {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-left: .25em;
  background: url(/common/images/ico_pop_01.gif);
  vertical-align: middle;
}
.c-expander__list--col3 li {
  width: 33.3333%;
}
.c-expander__list--col4 li {
  width: 25%;
}
.c-expander__list--col5 li {
  width: 20%;
}
.c-expander__list--col6 li {
  width: 16.6666%;
}
.c-expander--bordered {
  padding-bottom: 2em;
  border-bottom: solid 1px #e3e3e3;
}
.c-expander--bordered + .c-expander--bordered {
  margin-top: 1em;
}
.c-expander--bordered .c-expander__title {
  align-items: center;
  padding: 0 3em 0 0;
  background-color: transparent;
  background-position: right 0 center;
}
.c-expander--bordered .c-expander__title > div {
  margin-right: 2em;
}
@media (min-width: 769px) {
  .c-expander__list--col3 li:nth-child(3n+1) {
    clear: both;
  }
  .c-expander__list--col4 li:nth-child(4n+1) {
    clear: both;
  }
  .c-expander__list--col5 li:nth-child(5n+1) {
    clear: both;
  }
  .c-expander__list--col6 li:nth-child(6n+1) {
    clear: both;
  }
}
@media (max-width: 768px) {
  .c-expander__title {
    background-image: url(/katsuyou/photo/common/images/icn_plus-sp.png);
    background-size: 28px 28px !important;
  }
  .c-expander__title:hover {
    opacity: 1;
  }
  .c-expander.is-open .c-expander__title {
    background-image: url(/katsuyou/photo/common/images/icn_minus-sp.png);
    background-size: 28px 28px !important;
    opacity: 0.7;
  }
  .c-expander__body > div {
    padding-top: 1.5em;
  }
  .c-expander__list {
    margin: 0;
  }
  .c-expander__list--col3 li, .c-expander__list--col4 li {
    width: 100%;
    padding: 0;
  }
  .c-expander__list--col5 li, .c-expander__list--col6 li {
    width: 50%;
  }
  .c-expander--bordered {
    padding-bottom: 1em;
  }
  .c-expander--bordered .c-expander__title > div {
    width: 80px;
    margin-right: 1em;
    flex: 0 0 80px;
  }
  .c-expander--bordered .c-expander__title > div img {
    width: 100%;
    height: auto;
  }
}

/* =========================================================
 other-ss�F���̑��̃T�[�r�X�T�|�[�g
========================================================= */
.c-other-ss {
  overflow: hidden;
}
.c-other-ss__items {
  display: flex;
  margin: 0 -15px;
}
.c-other-ss__item {
  display: flex;
  flex-direction: column;
  margin: 0 15px;
  width: calc(33.3333% - 30px);
  background: #fff;
}
.c-other-ss__item--1col {
  width: 100%;
  max-width: 730px;
  margin: 0 auto;
  padding-bottom: 1.5em;
}
.c-other-ss__item--nobg {
  background-color: transparent;
}
.c-other-ss__item__inner {
  padding: 1.5em 1em 2em;
}
.c-other-ss__item__inner dt {
  margin-bottom: 1em;
  padding-bottom: .5em;
  border-bottom: solid 2px #333;
  font-size: 1.125rem;
  text-align: center;
}
@media (max-width: 960px) {
  .c-other-ss__item__inner dt {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.c-other-ss__item__inner dd {
  padding: 0 .5em;
}
.c-other-ss__item__btn {
  margin-top: auto;
}
@media (max-width: 768px) {
  .c-other-ss__items {
    display: block;
    margin: 0;
  }
  .c-other-ss__item {
    margin: 0;
    width: 100%;
  }
  .c-other-ss__item + .c-other-ss__item {
    margin-top: 1.5em;
  }
}

/* =========================================================
 bottom-nav
========================================================= */
.c-bottom-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  line-height: 1.3;
}
.c-bottom-nav li {
  margin: .3em 1em;
  font-size: 0.9375rem;
}
@media (max-width: 960px) {
  .c-bottom-nav li {
    font-size: calc(0.76875rem + 0.28125vw) ;
  }
}
.c-bottom-nav a {
  display: inline-block;
  padding-left: 18px;
  background: url(/katsuyou/photo/premium/common/images/icn_btm_nav.png) no-repeat left center;
  color: #fff !important;
  text-decoration: none;
}

/* =========================================================
 gallery backnumber
========================================================= */
.c-gallery__backnumber {
  overflow: hidden;
}
.c-gallery__backnumber ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px 0 0;
}
.c-gallery__backnumber ul li {
  box-sizing: border-box;
  padding: 0 10px 10px 0;
  width: 16.66667%;
}
.c-gallery__backnumber ul a {
  display: block;
  padding: 1em .5em;
  background: #fff url(/katsuyou/photo/premium/common/images/icn_link-bk.png) no-repeat right 10px center;
  color: #333 !important;
  text-decoration: none !important;
  text-align: center;
  font-weight: bold;
}
@media (max-width: 768px) {
  .c-gallery__backnumber ul li {
    width: 33.33333%;
  }
  .c-gallery__backnumber ul a {
    background-position: right 5px center;
  }
}

/* =========================================================
 reader
========================================================= */
.c-reader {
  padding: 20px;
  border: solid 1px #ccc;
  font-size: 0.875rem;
}
@media (max-width: 960px) {
  .c-reader {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}
.c-reader p {
  overflow: hidden;
}
.c-reader p:nth-child(1) a {
  display: inline-block;
  float: left;
  margin-right: 20px;
}
.c-reader p:nth-child(1) span {
  display: block;
  overflow: hidden;
}
.c-reader p:nth-child(2) {
  margin-left: 178px;
  margin-top: 1em;
}
@media (max-width: 768px) {
  .c-reader p:nth-child(1) img {
    width: 120px;
    height: auto;
  }
  .c-reader p:nth-child(2) {
    margin-left: 0;
  }
}

/* =========================================================
 anchor
========================================================= */
.c-anchor {
  position: relative;
}
.c-anchor__target {
  position: absolute;
  top: -30px;
  display: block;
  content: "";
  width: 1px;
  height: 1px;
}
@media (max-width: 768px) {
  .c-anchor__target {
    top: -56px;
  }
}

/* =========================================================
 production
========================================================= */
/* production__grid
--------------------------------------------------------- */
.p-production__grid {
  display: flex;
  align-items: center;
}
.p-production__grid + .p-production__grid {
  margin-top: 90px;
}
.p-production__grid__image {
  width: calc(580 / 960 * 100%);
}
.p-production__grid__text {
  box-sizing: border-box;
  width: calc(380 / 960 * 100%);
  padding-left: 50px;
}
.p-production__grid__text--full {
  width: 100%;
  padding: 0;
}
@media (min-width: 769px) {
  .p-production__grid--rev {
    flex-direction: row-reverse;
  }
  .p-production__grid--rev .p-production__grid__text {
    padding-left: 0;
    padding-right: 50px;
  }
}
@media (max-width: 768px) {
  .p-production__grid {
    display: block;
  }
  .p-production__grid + .p-production__grid {
    margin-top: 40px;
  }
  .p-production__grid__image, .p-production__grid__text {
    width: 100%;
    padding: 0;
  }
  .p-production__grid__image {
    margin-bottom: 1.5em;
  }
}

/* production__demo-btns
--------------------------------------------------------- */
.p-production__demo-btns {
  display: flex;
  justify-content: center;
}
.p-production__demo-btns li {
  margin: 0 2em;
}
.p-production__demo-btns li small {
  display: block;
  text-align: center;
}
@media (max-width: 768px) {
  .p-production__demo-btns {
    display: block;
    margin: 0 auto;
    max-width: 80%;
  }
  .p-production__demo-btns li {
    margin: 0;
    text-align: center;
  }
  .p-production__demo-btns li + li {
    margin-top: 1.5em;
  }
}

/* production__support
--------------------------------------------------------- */
.p-production__support {
  overflow: hidden;
}
.p-production__support a {
  color: #333 !important;
  text-decoration: none !important;
}
.p-production__support a img {
  display: inline-block;
  margin-left: .25em;
  vertical-align: 0;
}
.p-production__support__items {
  display: flex;
  flex-wrap: wrap;
  margin-right: -30px;
}
.p-production__support__items > li:nth-child(n+3) {
  margin-top: 30px;
}
.p-production__support__item {
  box-sizing: border-box;
  margin-right: 30px;
  width: calc(50% - 30px);
  border: solid 1px #979797;
  background: #fff;
}
.p-production__support__title {
  height: 2.5em;
  line-height: 2.5em;
  background-color: #979797;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  font-size: 0.875rem;
}
@media (max-width: 960px) {
  .p-production__support__title {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}
.p-production__support__tel {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em;
  min-height: 6em;
}
.p-production__support__tel * {
  line-height: 1.2;
}
.p-production__support__tel p + p {
  margin-top: 0;
}
.p-production__support__tel__icon {
  margin-right: .5em;
}
.p-production__support__tel__text {
  max-width: 100%;
}
.p-production__support__mail {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em;
  min-height: 6em;
  background: #e7e7e7;
}
.p-production__support__mail * {
  line-height: 1.2;
}
.p-production__support__mail p + p {
  margin-top: 0;
}
.p-production__support__mail__icon {
  margin-right: .5em;
}
.p-production__support__mail__text {
  max-width: 100%;
}
.p-production__support__mail__text ul {
  margin: .25em 0 0 .25em;
}
@media (max-width: 768px) {
  .p-production__support__items {
    display: block;
    margin-right: 0;
  }
  .p-production__support__items > li:nth-child(n+2) {
    margin-top: 20px;
  }
  .p-production__support__item {
    margin-right: 0;
    width: 100%;
  }
}

/* =========================================================
 epsite
========================================================= */
/* epsite__news
--------------------------------------------------------- */
.p-epsite__news + .p-epsite__news {
  margin-top: 2em;
  padding-top: 2em;
  border-top: solid 1px #eaecee;
}
.p-epsite__news__list {
  margin-bottom: 1em;
}
.p-epsite__news__items {
  display: table;
}
.p-epsite__news__item {
  display: table-row;
  line-height: 1.3;
}
.p-epsite__news__item dt, .p-epsite__news__item dd {
  display: table-cell;
  vertical-align: top;
}
.p-epsite__news__item dt {
  padding-right: 2em;
  font-weight: normal;
}
.p-epsite__news__item a:link, .p-epsite__news__item a:visited, .p-epsite__news__item a:hover, .p-epsite__news__item a:active {

}
.p-epsite__news__item + .p-epsite__news__item dt, .p-epsite__news__item + .p-epsite__news__item dd {
  padding-top: .25em;
}

@media (max-width: 767px){
#showroom .p-epsite__news__item dt, .p-epsite__news__item dd{
display: block;
}

#showroom .p-epsite__news__item{
margin-bottom:20px;
display: block;
}

}

/* epsite__grid
--------------------------------------------------------- */
.p-epsite__grid {
  display: flex;
  margin: 0 -25px;
}
.p-epsite__grid + .p-epsite__grid {
  margin-top: 70px;
}
.p-epsite__grid > div {
  margin: 0 25px;
  width: calc(50% - 50px);
}
@media (max-width: 768px) {
  .p-epsite__grid {
    display: block;
    margin: 0;
  }
  .p-epsite__grid + .p-epsite__grid {
    margin-top: 40px;
  }
  .p-epsite__grid > div {
    margin: 0;
    width: 100%;
  }
  .p-epsite__grid > div:nth-child(1) {
    margin-bottom: 1.3em;
  }
}

/* =========================================================
 floomap
========================================================= */
/* floomap__legend
--------------------------------------------------------- */
.p-floomap__legend {
  margin-top: 1em;
  overflow: hidden;
}
.p-floomap__legend__item {
  display: flex;
  float: left;
  margin-top: 1.2em;
}
.p-floomap__legend__item i {
  display: inline-block;
  width: 5em;
}
.p-floomap__legend__item span {
  align-self: center;
  margin-left: 1em;
}
.p-floomap__legend__item--business, .p-floomap__legend__item--personal {
  width: 24em;
}
.p-floomap__legend__item--business i {
  background: #a7b0c5;
}
.p-floomap__legend__item--production i {
  background: #d4d6a0;
}
.p-floomap__legend__item--personal i {
  background: #caa9b7;
}
.p-floomap__legend__item--epsite i {
  background: #a7d0c2;
}
@media (max-width: 768px) {
  .p-floomap__legend__item {
    float: none;
    margin-top: 1em;
    width: 100% !important;
  }
}

/* =========================================================
 contact
========================================================= */
/* contact__grid
--------------------------------------------------------- */
.p-contact__grid {
  display: flex;
  margin: 4em -30px 0;
}
.p-contact__grid > div {
  margin: 0 30px;
  width: calc(50% - 60px);
}
.p-contact__grid h3 {
  margin-bottom: 1.5em;
  padding-bottom: .5em;
  border-bottom: solid 2px #333;
}
.p-contact__grid p + p {
  margin-top: .5em;
}
.p-contact__grid strong {
  font-size: 1.375rem;
  line-height: 1.1;
}
@media (max-width: 960px) {
  .p-contact__grid strong {
    font-size: calc(0.8125rem + 0.9375vw) ;
  }
}
@media (max-width: 768px) {
  .p-contact__grid {
    display: block;
    margin: 3em 0 0;
  }
  .p-contact__grid > div {
    margin: 0;
    width: 100%;
  }
  .p-contact__grid > div + div {
    margin-top: 3em;
  }
}

/* =========================================================
 access
========================================================= */
/* access__map
--------------------------------------------------------- */
.p-access__map {
  position: relative;
  margin-bottom: 2em;
}
.p-access__map__title {
  margin-bottom: 5em;
  width: 260px;
}
.p-access__map__image {
  position: absolute;
  right: 0;
  top: 0;
}
.p-access__map__text {
  width: 280px;
}
.p-access__map__text > ul {
  margin-top: 1em;
}
.p-access__map__text > ul li + li {
  margin-top: .25em;
}
.p-access__map__text dl {
  margin-top: 2em;
}
.p-access__map__text dl dt {
  margin-bottom: .5em;
}
@media (max-width: 768px) {
  .p-access__map {
    position: static;
  }
  .p-access__map__title {
    margin-bottom: 2em;
  }
  .p-access__map__image {
    position: static;
    margin-bottom: 1em;
  }
  .p-access__map__text {
    width: 100%;
  }
}

/* access__table
--------------------------------------------------------- */
.p-access__table {
  table-layout: fixed;
  width: 100%;
}
.p-access__table th, .p-access__table td {
  border-bottom: solid 1px #e3e3e3;
}
.p-access__table th {
  padding: .5em 0;
}
.p-access__table td {
  padding: .5em;
  text-align: right;
}

/* access__photo
--------------------------------------------------------- */
.p-access__photo {
  overflow: hidden;
}
.p-access__photo__item {
  float: left;
  margin-top: 1.5em;
  margin-left: 25px;
}
.p-access__photo__item--lg {
  margin-right: 25px;
  margin-left: 0;
}
.p-access__photo__item--left {
  float: left;
  margin-left: 0;
}
.p-access__photo__item--right {
  float: right;
  margin-left: 0;
}
.p-access__photo__item p {
  margin-top: .5em;
  font-size: 0.875rem;
  text-align: center;
}
@media (max-width: 960px) {
  .p-access__photo__item p {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}
@media (max-width: 768px) {
  .p-access__photo {
    margin: 0 -10px;
  }
  .p-access__photo__item {
    box-sizing: border-box;
    width: 50%;
    margin: 1em 0 0 0;
    padding: 0 10px;
  }
  .p-access__photo__item--lg {
    margin-right: 0;
    margin-bottom: 10px;
    width: 100%;
  }
  .p-access__photo__item--left, .p-access__photo__item--right {
    float: none;
    width: 100%;
  }
  .p-access__photo__item--right {
    margin-top: 2.5em;
  }
}

/* infomation__table
--------------------------------------------------------- */
.p-infomation__table {
  width: 100%;
}
.p-infomation__table thead th {
  font-size: 1.25rem;
  text-align: left;
}
@media (max-width: 960px) {
  .p-infomation__table thead th {
    font-size: calc(0.8rem + 0.75vw) ;
  }
}
.p-infomation__table tbody td {
  padding: .5em 0;
  border-bottom: solid 1px #e3e3e3;
}
.p-infomation__table tbody td:nth-child(1) {
  width: 40%;
}
.p-infomation__table tbody td:nth-child(2) {
  width: 40%;
}
.p-infomation__table tbody td:nth-child(3) {
  width: 20%;
}
.p-infomation__table tbody dl dt {
  float: left;
  margin-right: 2em;
  font-weight: normal;
}
.p-infomation__table tbody dl dd {
  overflow: hidden;
}
@media (max-width: 768px) {
  .p-infomation__table tbody td:nth-child(1) {
    width: 40%;
  }
  .p-infomation__table tbody td:nth-child(2) {
    width: 30%;
  }
  .p-infomation__table tbody td:nth-child(3) {
    width: 30%;
  }
  .p-infomation__table tbody dl dt {
    float: none;
    margin-right: 0;
    margin-bottom: .25em;
  }
  .p-infomation__table tbody dl dd {
    padding-left: 1em;
  }
}

/* =========================================================
 Utility
========================================================= */
/* clearfix & overflow rollover
--------------------------------------------------------- */
.u-cf {
  *zoom: 1;
}
.u-cf:after {
  content: "";
  display: table;
  clear: both;
}

.u-ofh {
  overflow: hidden;
}

.u-oro {
  -moz-transition: opacity 0.25s ease;
  -o-transition: opacity 0.25s ease;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}
.u-oro:hover {
  opacity: 0.7;
}

/* image
--------------------------------------------------------- */
img.u-liquid {
  width: 100%;
  height: auto;
}
img.u-liquid--max {
  width: auto;
  max-width: 100%;
  height: auto;
}

/* list
--------------------------------------------------------- */
.u-list--disc {
  margin-left: 1.5em;
}
.u-list--disc li {
  list-style-type: disc;
}
.u-list--number {
  margin-left: 1.5em;
}
.u-list--indent {
  display: table;
}
.u-list--indent li {
  display: table-row;
}
.u-list--indent li > span {
  display: table-cell;
  vertical-align: top;
}

/* display
--------------------------------------------------------- */
@media (max-width: 768px) {
  .u-none--sp {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .u-none--pc {
    display: none !important;
  }
}

/* margin, padding
--------------------------------------------------------- */
.u-mt--0 {
  margin-top: 0 !important;
}
.u-mt--lll {
  margin-top: 5em !important;
}
.u-mt--ll {
  margin-top: 4em !important;
}
.u-mt--l {
  margin-top: 3em !important;
}
.u-mt--m {
  margin-top: 2em !important;
}
.u-mt--s {
  margin-top: 1em !important;
}
.u-mt--ss {
  margin-top: .5em !important;
}
@media (max-width: 768px) {
  .u-mt--0--sp {
    margin-top: 0 !important;
  }
  .u-mt--l, .u-mt--l--sp {
    margin-top: 3em !important;
  }
  .u-mt--m, .u-mt--m--sp {
    margin-top: 2em !important;
  }
  .u-mt--s, .u-mt--s--sp {
    margin-top: 1em !important;
  }
}

.u-mb--0 {
  margin-bottom: 0 !important;
}
.u-mb--lll {
  margin-bottom: 5em !important;
}
.u-mb--ll {
  margin-bottom: 4em !important;
}
.u-mb--l {
  margin-bottom: 3em !important;
}
.u-mb--m {
  margin-bottom: 2em !important;
}
.u-mb--s {
  margin-bottom: 1em !important;
}
.u-mb--ss {
  margin-bottom: .5em !important;
}
@media (max-width: 768px) {
  .u-mb--0--sp {
    margin-bottom: 0 !important;
  }
}

.u-ml--auto {
  margin-left: auto;
}

.u-pt--0 {
  padding-top: 0 !important;
}

.u-pb--0 {
  padding-bottom: 0 !important;
}

/* text
--------------------------------------------------------- */
.u-lh--130 {
  line-height: 1.3 !important;
}

.u-lh--140 {
  line-height: 1.4 !important;
}

.u-lh--150 {
  line-height: 1.5 !important;
}

.u-lh--160 {
  line-height: 1.6 !important;
}

.u-lh--170 {
  line-height: 1.7 !important;
}

.u-lh--180 {
  line-height: 1.8 !important;
}

.u-lh--1875 {
  line-height: 1.875 !important;
}

.u-tac {
  text-align: center !important;
}

.u-tar {
  text-align: right !important;
}

.u-tal {
  text-align: left !important;
}

@media (max-width: 768px) {
  .u-tac--sp {
    text-align: center !important;
  }

  .u-tar--sp {
    text-align: right !important;
  }

  .u-tal--sp {
    text-align: left !important;
  }
}
.u-fs--28 {
  font-size: 1.75rem;
}
@media (max-width: 960px) {
  .u-fs--28 {
    font-size: calc(0.85rem + 1.5vw) ;
  }
}

.u-fs--26 {
  font-size: 1.625rem;
}
@media (max-width: 960px) {
  .u-fs--26 {
    font-size: calc(0.8375rem + 1.3125vw) ;
  }
}

.u-fs--24 {
  font-size: 1.5rem;
}
@media (max-width: 960px) {
  .u-fs--24 {
    font-size: calc(0.825rem + 1.125vw) ;
  }
}

.u-fs--22 {
  font-size: 1.375rem;
}
@media (max-width: 960px) {
  .u-fs--22 {
    font-size: calc(0.8125rem + 0.9375vw) ;
  }
}

.u-fs--20 {
  font-size: 1.25rem;
}
@media (max-width: 960px) {
  .u-fs--20 {
    font-size: calc(0.8rem + 0.75vw) ;
  }
}

.u-fs--18 {
  font-size: 1.125rem;
}
@media (max-width: 960px) {
  .u-fs--18 {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}

.u-fs--16 {
  font-size: 1rem;
}
@media (max-width: 960px) {
  .u-fs--16 {
    font-size: calc(0.775rem + 0.375vw) ;
  }
}

.u-fs--14 {
  font-size: 0.875rem;
}
@media (max-width: 960px) {
  .u-fs--14 {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}

.u-fs--12 {
  font-size: 0.75rem;
}

.bdb-blue{
border-bottom: solid 1px #4472c4;padding-bottom: 2rem;
}

.u-important {
  color: #e60012 !important;
}

/* others
--------------------------------------------------------- */
/* ----- tabled-center ----- */
.u-tabled-center {
  display: table;
  margin-left: auto;
  margin-right: auto;
}

/* ----- youtube ----- */
.u-youtube {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-top: 56.25%;
  padding-bottom: 0;
}

.u-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* ----- for print ----- */
@media print {
  .u-none--pc {
    display: none !important;
  }
}

/* movieArea
--------------------------------------------------------- */

.movieArea {
    padding: 0px;
    width:700px;
    margin: 0 auto;
}

.movieArea.column2 {
    padding: 0px;
    width:960px;
    margin: 0 auto;
}

.movieArea.column2 .movieBox {
    float:left;
    width: 48%;
    margin-right:4%;
}

.movieArea .column2 .movieText {
    width: 400px;
}

.movieArea.column2 .movieBox:last-child {
    margin-right:0;
}

@media (max-width: 767px){

.movieArea,.movieArea.column2 {
 width:auto;
}


.movieArea column2 .movieArea {
    padding: 0px 0px;
}

.movieArea.column2 .movieBox {
    width: auto;
    margin-right:0;
    float:none;
}

.movieArea.column2 .movieBox:first-child{
   margin-bottom:50px;
}

.movieArea column2 .movieText {
    width: auto;
}

}

.redbox {
    background: #fff;
    border: #E60000 5px solid;
    padding: 40px 60px;
    margin: 0 auto;
    text-align: center;
}

.graybox{
    background: #fff;
    border: #ccc 5px solid;
    padding: 40px 60px;
    margin: 0 auto;
    text-align: center;
}


@media (max-width: 768px) {
.redbox {
    padding: 20px 15px;
}

.graybox{
    padding: 20px 15px;
}


}


/* =========================================================
 epsite common
========================================================= */
/* component
--------------------------------------------------------- */
/* ----- panel ----- */
.c-panels li + li {
  margin-top: 1.25em;
}

.c-panel {
  position: relative;
  display: block;
  padding: 2em;
  border: solid 1px #ccc;
  color: #333 !important;
  text-decoration: none !important;
}
.c-panel--invert {
  border: solid 1px #333;
  background: #333;
  color: #fff !important;
}
.c-panel--reader > div:nth-child(1) {
  float: left;
  margin-right: 2em;
}
.c-panel--reader > div:nth-child(2) {
  overflow: hidden;
}
.c-panel + .c-panel {
  margin-top: 1.25em;
}
.c-panel--interview {
  display: table;
  width: 100%;
  padding: 0;
}
.c-panel--interview > div {
  display: table-cell;
  vertical-align: middle;
}
.c-panel--interview > div:nth-child(1) {
  width: calc(440 / 960 * 100%);
}
.c-panel--interview > div:nth-child(2) {
  width: calc(520 / 960 * 100%);
  padding: 1em 1em 1em 2em;
}
a.c-panel {
  transition: all 0.25s ease;
  background-image: url(/katsuyou/photo/premium/common/images/icn_arw_panel.png);
  background-repeat: no-repeat;
  background-position: right 12px bottom 12px;
}
a.c-panel:hover {
  background-color: rgba(0, 0, 0, 0.05);
}
a.c-panel[target="_blank"] {
  position: relative;
}
a.c-panel[target="_blank"]::after {
  position: absolute;
  left: 12px;
  top: 12px;
  display: block;
  content: "";
  width: 15px;
  height: 15px;
  background: url(/common/images/ico_pop_01.gif);
}

a.c-panel--invert {
  background-image: none;
}
a.c-panel--invert:hover {
  background: #333;
}

/* img�g��h�~ */
img.imgMaxwidth{
max-width:100%;
width:auto;
height:auto;
}

@media (max-width: 767px) {
  .c-panel {
    padding: 1.5em;
  }
  a.c-panel[target="_blank"]::after {
    left: 8px;
  }
  .c-panel--reader > div:nth-child(1) {
    float: none;
    margin-right: 0;
    margin-bottom: 1em;
  }
  .c-panel--interview {
    padding: 0;
  }
  .c-panel--interview > div:nth-child(2) {
    padding: 1em;
  }

.galleryContents .c-grid__item {
    margin: 0 0 2em 0;
    }

.galleryContents .c-grid__item:last-child {
    margin: 0;
    }

  .p-epsite__news__item dt, .p-epsite__news__item dd {
    display: block;
}

}

/* ----- grid ----- */
.c-grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -15px;
}
.c-grid__item {
  box-sizing: border-box;
  margin: 0 15px 30px;
  width: calc(33.3333% - 30px);
}
.c-grid--col2 .c-grid__item {
  width: calc(50% - 30px);
}
.c-grid__text {
  margin-top: 1em;
}
.c-grid__text > p {
  margin-top: .25em;
}
.c-grid__text > p span {
  font-size: 0.875rem;
  font-weight: bold;
}
@media (max-width: 960px) {
  .c-grid__text > p span {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}
@media (max-width: 767px) {
  .c-grid {
    margin: 0;
  }
  .c-grid__item {
    margin: 0;
    width: 100%;
  }
  .c-grid--col2 .c-grid__item {
    width: 100%;
  }
  .c-grid__item + .c-grid__item {
    margin-top: 1.5em;
  }
  .c-grid--col2--sp {
    margin: 0 -10px;
  }
  .c-grid--col2--sp .c-grid__item {
    width: calc(50% - 20px);
    margin: 0 10px;
  }
  .c-grid--col2--sp .c-grid__item:nth-child(n+3) {
    margin-top: 20px;
  }
}

/* ----- profile ----- */
.c-profile {
  overflow: hidden;
}
.c-profile__image {
  float: left;
  margin-right: 2em;
}
.c-profile__title {
  margin-bottom: 1em;
  font-weight: bold;
}
.c-profile__text {
  overflow: hidden;
}
.c-profile__new {
  display: inline-block;
  margin-bottom: .25em;
  color: #e30920;
  font-style: normal;
}
@media (max-width: 767px) {
  .c-profile__image {
    margin-right: 1em;
    width: auto;
    max-width: 150px;
    margin: 0 auto 20px;
    float:none;
  }
  .c-profile__image img {
    width: 100%;
    height: auto;
  }
  .c-profile__text {
    word-break: break-all;
  }
}

/* ----- anchors ----- */
.c-anchors {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-bottom: 1.5em;
  border-bottom: solid 1px #e3e3e3;
}
.c-anchors li {
  margin: 0 1em 1em;
}

/* ----- table ----- */
.c-table {
  width: 100%;
}
.c-table-wrap {
  width: 100%;
}
.c-table--fixed {
  table-layout: fixed;
}
.c-table th, .c-table td {
  border: solid 1px #ccc;
  padding: .85em;
  text-align: left;
  vertical-align: middle;
}
.c-table th {
  background: #f2f3f4;
}
.c-table thead th {
  padding: 1em .25em;
  text-align: center;
}
.c-table .iLink02 {
  background-position: left center;
}
@media (max-width: 767px) {
  .c-table-wrap {
    width: 100%;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .c-table th {
    white-space: nowrap;
  }
  .c-table thead th {
    padding: 1em .5em;
  }
}

/* project
--------------------------------------------------------- */
/* ----- gallery__panel ----- */
.p-gallery__panel__grid {
  display: flex;
  align-items: center;
  text-align: center;
}
.p-gallery__panel__image {
  width: 286px;
}
.p-gallery__panel__image p {
  margin-top: .8em;
  font-size: 0.75rem;
}
.p-gallery__panel__text {
  flex: 1 0 0%;
}
.p-gallery__panel > p, .p-gallery__panel > dl {
  margin-top: 1.25em;
}
.p-gallery__panel > dl {
  font-size: 0.875rem;
}
@media (max-width: 960px) {
  .p-gallery__panel > dl {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}
@media (max-width: 767px) {
  .p-gallery__panel__grid {
    display: block;
  }
  .p-gallery__panel__image {
    margin: 0 auto 1em;
    width: 100%;
  }
  .p-gallery__panel__image img {
    width: auto;
    max-width: 100%;
    height: auto;
  }
}

/* ----- gallery__slider ----- */
.p-gallery__slider {
  text-align: center;
  overflow:hidden;
}
.p-gallery__slider__items {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}
.p-gallery__slider__items a {
  display: inline-block;
}
.p-gallery__slider__items img {
  width: auto;
  max-width: 100%;
  height: auto;
  margin:0 auto;
}
.p-gallery__slider .bx-wrapper .bx-controls-direction a {
  transform: opacity .3s ease;
  top: auto;
  bottom: -40px;
  margin-top: auto;
  background: none;
}
.p-gallery__slider .bx-wrapper .bx-controls-direction a::after {
  position: absolute;
  top: 11px;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 3px #333;
}
.p-gallery__slider .bx-wrapper .bx-controls-direction a:hover {
  opacity: .7;
}
.p-gallery__slider .bx-wrapper .bx-prev::after {
  left: 12px;
  border-left: solid 3px #333;
  transform: rotate(-45deg);
}
.p-gallery__slider .bx-wrapper .bx-next::after {
  right: 12px;
  border-right: solid 3px #333;
  transform: rotate(45deg);
}
@media (min-width: 768px) {
  .p-gallery__slider .bx-wrapper .bx-prev {
    left: 350px;
  }
  .p-gallery__slider .bx-wrapper .bx-next {
    right: 350px;
  }
}

/* ----- koubo__award ----- */
.p-koubo__award {
  display: flex;
  align-items: center;
  position: relative;
}
.p-koubo__award__title {
  white-space: nowrap;
  max-width: 100%;
}
.p-koubo__award__text {
  box-sizing: border-box;
  max-width: 100%;
  padding: 0 1em 0 4em;
}
.p-koubo__award__link {
  position: absolute;
  right: .75em;
  bottom: .5em;
}
.p-koubo__award__link span {
  display: inline-block;
  padding-left: 20px;
  background: url(/katsuyou/photo/premium/common/images/icn_btm_nav.png) no-repeat left center;
  text-decoration: underline;
}
@media (max-width: 767px) {
  .p-koubo__award {
    display: block;
  }
  .p-koubo__award__title {
    margin-bottom: 1em;
    white-space: normal;
    text-align: center;
  }
  .p-koubo__award__text {
    padding: 0 0 1em;
  }
}

/* ----- koubo__schedule ----- */
.p-koubo__schedule {
  max-width: 650px;
  margin: 0 auto;
  list-style: none;
  text-align: center;
}
.p-koubo__schedule li {
  position: relative;
  padding: 3em 3em 2em;
  background: #eaecee;
}
.p-koubo__schedule li::after {
  position: absolute;
  left: 50%;
  bottom: -43px;
  transform: translateX(-50%);
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 26px 19px 0 19px;
  border-color: #333 transparent transparent transparent;
}
.p-koubo__schedule li p + p {
  margin-top: .5em;
}
.p-koubo__schedule li:last-child::after {
  display: none;
}
.p-koubo__schedule li + li {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .p-koubo__schedule li {
    padding: 2em 1em 1.5em;
  }
}

/* ----- koubo__btns ----- */
.p-koubo__btns {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.p-koubo__btns li {
  margin: 10px;
}

/* ----- seminar__panel ----- */
.p-seminar__panel {
  display: block;
  height: 100%;
  border: solid 1px #ccc;
  color: #333 !important;
  text-decoration: none !important;
  background-image: url(/katsuyou/photo/premium/common/images/icn_arw_panel.png);
  background-repeat: no-repeat;
  background-position: right 12px bottom 12px;
}
.p-seminar__panel__text {
  padding: 1.5em;
}
@media (max-width: 767px) {
  .p-seminar__panel__text {
    padding: 1em 1em 1.5em;
  }
}

/* ----- seminar__subtitle ----- */
.p-seminar__subtitle {
  margin-bottom: .5em;
  font-size: 1.125rem;
  color: #fff;
  line-height: 1.1;
}
@media (max-width: 960px) {
  .p-seminar__subtitle {
    font-size: calc(0.7875rem + 0.5625vw) ;
  }
}
.p-seminar__subtitle span {
  display: inline-block;
  padding: .75em 1em;
}
.p-seminar__subtitle--free span {
  background: #66b298;
}
.p-seminar__subtitle--pay span {
  background: #ec7063;
}

/* ----- seminar__icon ----- */
.p-seminar__icon {
  display: inline-block;
  padding: .5em 1em;
  border: solid 1px;
  line-height: 1.1;
  font-style: normal;
  font-size: 0.875rem;
}
@media (max-width: 960px) {
  .p-seminar__icon {
    font-size: calc(0.7625rem + 0.1875vw) ;
  }
}
.p-seminar__icon--free {
  border-color: #66b298;
  color: #66b298;
}
.p-seminar__icon--pay {
  border-color: #ec7063;
  color: #ec7063;
}
/* ----- seminarkiyaku ----- */
.p-marunouchi .uln li {
 text-indent:-1.5em;
 padding-left:1.5em;
 }
.p-marunouchi .uln .u-list--disc li {
 text-indent:0em;
 padding-left:0em;
 }
@media (max-width: 767px) {
.p-marunouchi .uln li {
 text-indent:-2.5em;
 padding-left:2.5em;
 }
.p-marunouchi .uln .u-list--disc li{
 text-indent:0.2em;
 padding-left:0.5em;
 }

 }


/* ----- �v���C�o�V�[�|���V�[ ----- */


.btnArea .btnFormat{
    display: block;
    width: 220px;
    height: 34px;
    color: #fff;
    text-align: center;
    font-weight: bold;
    line-height: 34px;
    }


.btnArea #cookie_optout{
    background: #E60000 no-repeat url("/privacy/img/leftArrow.png") top 11px left 18px;

}

.btnArea #cookie_optin{
    background: #005AB4 no-repeat url("/privacy/img/leftArrow.png") top 11px left 18px;

}

.btnArea .btnFormat:hover{
text-decoration: none;
}

/* ----- �M�������[��� ----- */

.scrollList {
    overflow-y: auto;
    height: 150px;
}

@media (max-width: 767px){
.scrollList {
    overflow-y: visible;
    height: auto;
      word-break: break-all;
}
.p-epsite__news__item dt, .p-epsite__news__item dd{
display: block;
}

.p-epsite__news__item{
margin-bottom:20px;
display: block;
}

.p-gallery__slider .bx-viewport {
    -webkit-transform:none;
}

}


.scrollList::-webkit-scrollbar {
  width: 5px;
}
.scrollList::-webkit-scrollbar-track {
  background: #ccc;
  border-radius: 10px;
}
.scrollList::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 10px;
}
.p-gallery__slider.u-mb--lll {
margin-bottom: 1.5em !important;
}

.nohover{
cursor: default;
}

.u-oro.nohover:hover {
    opacity: 1;
    cursor: default;
}

.catch_head {
  padding-left:2em;
  position:relative;
  }
.catch_head:before {
    position: absolute;
    border-top: 1px solid;
    content: "";
    width: 2em;
    left: 0;
    top: 0.7em;
}

.c-panel.relative{
  position:relative;
}

.monthlylogo{
  position: absolute;
  right: 0;
  top: 0;
}

/* --------------------
�G�v�\���F��SNS�A�J�E���g�G���A
-------------------- */
#sns_area h2.title {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	padding-top:77px;
}
#sns_area p.lead {
	margin: 28px auto 0;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: -0.05em;
	text-align: center;
}
#sns_area ul.list {
	margin: 34px auto 0;
	text-align: center;
	padding-bottom: 80px;
}
#sns_area ul.list li {
	display: inline-block;
	vertical-align: top;
	width: 460px;
	margin: 0;
	text-align: left;
	background: url(/katsuyou/photo/premium/common/images/sns_bg.png) left top;
	transition: opacity 0.3s linear;
}
#sns_area ul.list li + li {
	margin: 0 0 0 40px;
}
#sns_area ul.list li:hover {
	opacity: 0.3;
}
#sns_area ul.list li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 30px 0;
	color: #151515;
}
#sns_area ul.list li a:hover {
	color: #151515;
	text-decoration: none;
}
#sns_area ul.list li .icon {
	display: inline-block;
	vertical-align: top;
	width: 120px;
	margin: 0 0 0 40px;
}
#sns_area ul.list li .textArea {
	display: inline-block;
	vertical-align: top;
	width: 260px;
	margin: 14px 0 0 16px;
	text-align: left;
}
#sns_area ul.list li .textArea p.text {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	color: #858585;
}
#sns_area ul.list li .textArea h3.title {
	margin: 14px auto 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.2;
}
#sns_area ul.list li .textArea p.acount {
	margin: 14px auto 0;
	display: inline-block;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	border-bottom: #151515 1px solid;
}

#sns_area ul.list li .button {
	width: 320px;
	height: 60px;
	font-size: 16px;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	color: #1877f2;
	text-indent: 34px;
	background: #fff;
	border: 2px solid #1877f2;
	border-radius: 30px;
	margin: 20px 0 0 70px;
	display: inline-block;
	position: relative;
	}
#sns_area ul.list li.facebook .button {
	color: #1877f2;
	border: 2px solid #1877f2;
	}

#sns_area ul.list li .button .ico {
	width: 26px !important;
	margin: 0 !important;
	padding: 0 !important;
	position: absolute;
	top: 18px;
	left: 0px;
}
#sns_area ul.list li .button .ico img {
	margin: 0 !important;
	padding: 0 !important;
}

@media only screen and (max-width: 767px) {
  #sns_area h2.title {
    font-size: 32px;
    font-size: 5.0vw;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
  }
  #sns_area p.lead {
    margin: 32px auto 0;
    margin: 5.0vw auto 0;
    font-size: 21px;
    font-size: 3.3vw;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: -0.05em;
    text-align: center;
  }
  #sns_area ul.list {
    margin: 52px auto 0;
    margin: 8.1vw auto 0;
    text-align: center;
  }
  #sns_area ul.list li {
    display: block;
    width: 580px;
    width: 90.6vw;
    margin: 0 auto 0;
    text-align: left;
    background: url(/katsuyou/photo/premium/common/images/sns_bg.png) left top;
    background-size: 32px 32px;
    background-size: 5.0vw 5.0vw;

    transition: opacity 0s linear;
  }
  #sns_area ul.list li + li {
    margin: 30px auto 0px;
    margin: 4.7vw auto 0;
  }
  #sns_area ul.list li:hover {
    opacity: 1;
  }
  #sns_area ul.list li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 40px 0;
    padding: 6.2vw 0;
    color: #151515;
  }
  #sns_area ul.list li a:hover {
    color: #151515;
    text-decoration: none;
  }
  #sns_area ul.list li .icon {
    display: inline-block;
    vertical-align: top;
    width: 152px;
    width: 23.8vw;
    margin: 0 0 0 40px;
    margin: 0 0 0 6.2vw;
  }
  #sns_area ul.list li .icon img {
    width: 100%;
    height: auto;
  }
  #sns_area ul.list li .textArea {
    display: inline-block;
    vertical-align: top;
    width: 310px;
    width: 48.4vw;
    margin: 19px 0 0 25px;
    margin: 3.0vw 0 0 3.9vw;
    text-align: left;
  }
  #sns_area ul.list li .textArea p.text {
    font-size: 20px;
    font-size: 3.1vw;
    font-weight: 500;
    line-height: 1.2;
    color: #858585;
    white-space: nowrap;
  }
  #sns_area ul.list li .textArea h3.title {
    margin: 20px auto 0;
    margin: 3.1vw auto 0;
    font-size: 24px;
    font-size: 3.8vw;
    font-weight: bold;
    line-height: 1.2;
  }
  #sns_area ul.list li .textArea p.acount {
    margin: 20px auto 0;
    margin: 3.1vw auto 0;
    display: inline-block;
    font-size: 24px;
    font-size: 3.8vw;
    font-weight: 500;
    line-height: 1.2;
    border-bottom: #151515 1px solid;
  }
  #sns_area ul.list li .button {
    position: relative;
    margin: 20px 0 0 88px;
    margin: 3.1vw 0 0 13.8vw;
    display: inline-block;

    width: 406px;
    width: 63.4vw;
    height: 70px;
    height: 10.9vw;
    background: #fff;
    border: 2px solid #1877f2;
    border-radius: 35px;
    border-radius: 5.5vw;

    font-size: 20px;
    font-size: 3.1vw;
    font-weight: bold;
    line-height: 70px;
    line-height: 10.9vw;
    text-align: center;
    color: #1877f2;
    text-indent: 42px;
    text-indent: 6.6vw;
  }
  #sns_area ul.list li.facebook .button {
    color: #1877f2;
    border: 2px solid #1877f2;
  }

  #sns_area ul.list li .button .ico {
    margin: 0 !important;
    padding: 0 !important;
    position: absolute;
    top: 2.3vw;
    width: 5.0vw;
    left: -10px;
  }
  #sns_area ul.list li .button .ico img {
    width: 100%;
    height: auto;
    margin: 0 !important;
    padding: 0 !important;
  }
}


/* ----- �x�ق̂��m�点 ----- */

.news__items.holiday li {
	display: block;
}

/* --------------------
7/11�ǋL
-------------------- */
.indentTable th{
    font-weight:normal;
}