@charset "UTF-8";
/**
 * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
 * http://cssreset.com
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* -------------------------------------------------------------
基本設定
--------------------------------------------------------------*/
body {
  -webkit-text-size-adjust: 100%;
  font-family: helvetica, arial, "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  color: #333;
  background-color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.7; }

.menu ul li a {
  font-size: 12px;
  line-height: 12px; }

sub {
  font-size: 10px; }

/*　ギャラリー　*/
#phcon_gallery {
  padding-top: 20px;
  margin-top: 60px;
  background-color: #aba388; }
  #phcon_gallery h3 {
    color: #fff;
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 10px; }
  #phcon_gallery h4 {
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px; }

.work-list .work {
  /*
		@include opacity(0);
		transform: translateY(50px);
		@include transition;
		
		&.is-action {
			@include opacity(100);
			transform: translateY(0px);
		}
*/ }
  .work-list .work:hover .inner-content {
    background: rgba(0, 144, 255, 0.8); }
  .work-list .work .content-bg {
    box-sizing: border-box;
    padding: 0; }
    .work-list .work .content-bg img {
      width: 100%;
      height: auto;
      margin-bottom: 5px; }
    .work-list .work .content-bg p {
      color: #1e293b;
      line-height: 1.2;
      margin-top: 0; }

.work-list .text {
  color: #ffde02; }

/* -------------------------------------------------------------
PC
--------------------------------------------------------------*/
@media screen and (min-width: 769px) {
  .photocon-theme h1 {
    color: #595858 !important;
    font-size: 33px !important;
    text-align: center !important;
    line-height: 1.5 !important;
    font-weight: bold !important;
    letter-spacing: 0.2em !important; }
  .photocon-theme h1 span {
    font-size: 14px !important; }
  .photocon-theme-lead {
    font-size: 20px !important;
    line-height: 1.8 !important;
    display: block !important;
    padding-top: 30px !important;
    text-align: center !important; }
  .photocon-entry-btn {
    font-size: 1.2rem !important; }
  .pc_2017 {
    width: 100%;
    background-color: #2878bf;
    margin-top: 64px; }
    .pc_2017__kv {
      width: 100%; }
      .pc_2017__kv h2 {
        width: 100%; }
        .pc_2017__kv h2 img {
          width: 100%;
          height: auto; }
    .pc_2017__lead {
      width: 100%;
      background-color: #2878bf;
      padding: 50px 0; }
      .pc_2017__lead h3 {
        color: #ffde02;
        font-size: 28px;
        font-weight: bold;
        line-height: 1.2;
        text-align: center;
        margin-bottom: 40px; }
      .pc_2017__lead p {
        color: #fff;
        font-size: 18px;
        line-height: 1.6;
        text-align: center; }
    .pc_2017__content--1 {
      width: 100%;
      padding: 75px 0;
      background-color: #fff; }
      .pc_2017__content--1 .content_inner--1 {
        max-width: 1000px;
        margin: 0 auto 60px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between; }
        .pc_2017__content--1 .content_inner--1 .content__item {
          width: calc(100% - 507px);
          box-sizing: border-box; }
          .pc_2017__content--1 .content_inner--1 .content__item dl {
            *zoom: 1; }
            .pc_2017__content--1 .content_inner--1 .content__item dl:before {
              content: " ";
              display: table; }
            .pc_2017__content--1 .content_inner--1 .content__item dl:after {
              content: " ";
              display: table;
              clear: both; }
            .pc_2017__content--1 .content_inner--1 .content__item dl dt {
              float: left;
              color: #fff;
              font-size: 18px;
              line-height: 32px;
              text-align: center;
              background-color: #348ddb;
              padding: 0 20px;
              margin-right: 20px;
              width: 120px;
              border-radius: 16px;
              -webkit-border-radius: 16px;
              -moz-border-radius: 16px; }
            .pc_2017__content--1 .content_inner--1 .content__item dl dd {
              float: none;
              font-size: 18px;
              line-height: 32px;
              margin-bottom: 10px; }
          .pc_2017__content--1 .content_inner--1 .content__item p {
            font-size: 18px;
            padding-left: 140px; }
            .pc_2017__content--1 .content_inner--1 .content__item p a {
              color: #ed001d;
              text-decoration: underline; }
        .pc_2017__content--1 .content_inner--1 .content__photobook {
          width: 507px;
          box-sizing: border-box; }
          .pc_2017__content--1 .content_inner--1 .content__photobook img {
            width: 100%;
            height: auto; }
          .pc_2017__content--1 .content_inner--1 .content__photobook p {
            font-size: 14px; }
      .pc_2017__content--1 .content_inner--2 {
        max-width: 1000px;
        margin: 0 auto; }
        .pc_2017__content--1 .content_inner--2 img {
          width: 100%;
          height: auto;
          box-shadow: rgba(105, 105, 105, 0.9) 0px 0px 5px; }
        .pc_2017__content--1 .content_inner--2 p {
          text-align: center; }
    .pc_2017__content--2 {
      width: 100%;
      padding: 45px 0;
      background-color: #fff; }
      .pc_2017__content--2 .content_inner {
        max-width: 1000px;
        margin: 0 auto; }
      .pc_2017__content--2 h4 {
        color: #333;
        font-size: 25px;
        font-weight: bold;
        line-height: 1.2;
        text-align: center;
        margin-bottom: 20px; }
      .pc_2017__content--2 .img__photocon {
        margin-bottom: 20px; }
        .pc_2017__content--2 .img__photocon img {
          width: 100%;
          height: auto; }
      .pc_2017__content--2 .btn__photocon a {
        color: #333;
        font-size: 20px;
        text-align: center;
        padding: 10px;
        display: block;
        border: solid 1px #333;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -moz-transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease; }
        .pc_2017__content--2 .btn__photocon a:hover {
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
          filter: alpha(opacity=70);
          -moz-opacity: 0.7;
          -webkit-opacity: 0.7;
          opacity: 0.7; }
    .pc_2017__content--3 {
      width: 100%;
      padding: 45px 0 20px;
      background-color: #4a4a4a; }
      .pc_2017__content--3 .content_inner {
        max-width: 1000px;
        margin: 0 auto; }
      .pc_2017__content--3 h4 {
        text-indent: -9999px;
        background: url(../img/ttl_howto.png) center center no-repeat;
        background-size: cover;
        max-width: 100%;
        height: 0;
        padding-top: 5.7077625%;
        margin: 0 auto 20px; }
      .pc_2017__content--3 h5 {
        color: #fff;
        font-size: 18px;
        width: 600px;
        padding-left: 20px;
        margin: 0 auto 0.5em;
        position: relative; }
        .pc_2017__content--3 h5:before {
          position: absolute;
          content: "■";
          left: 0; }
      .pc_2017__content--3 ul {
        color: #fff;
        font-size: 16px;
        width: 600px;
        margin: 0 auto 1em; }
        .pc_2017__content--3 ul li {
          padding-left: 20px;
          position: relative; }
          .pc_2017__content--3 ul li:before {
            position: absolute;
            content: "※";
            font-size: 10px;
            left: 0;
            top: 3px; }
    .pc_2017__content--btn {
      width: 100%;
      background-color: #2878bf;
      padding: 35px 10px; }
      .pc_2017__content--btn a {
        color: #333;
        font-size: 18px;
        text-align: center;
        max-width: 700px;
        background-color: #ffde02;
        display: block;
        padding: 20px;
        margin: 0 auto;
        position: relative;
        -moz-transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease; }
        .pc_2017__content--btn a:after {
          position: absolute;
          content: "";
          background: url(../img/arrow.png) 0 0 no-repeat;
          width: 10px;
          height: 18px;
          top: calc(50% - 9px);
          right: 20px; }
        .pc_2017__content--btn a:hover {
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
          filter: alpha(opacity=70);
          -moz-opacity: 0.7;
          -webkit-opacity: 0.7;
          opacity: 0.7; }
    .pc_2017__content--closed {
      color: #ffde02;
      font-size: 24px;
      text-align: center; }
  /* #entry -------- */
  #entry {
    width: 100%;
    margin: 64px auto 0;
    padding: 40px 0 90px;
    background-color: #000;
    color: #fff; }
    #entry section {
      width: 820px;
      margin: 0 auto;
      padding: 0; }
    #entry h2 {
      margin: 0 0 10px;
      padding: 0;
      line-height: 1.2;
      font-size: 24px;
      font-weight: bold;
      text-align: center; }
      #entry h2 img {
        display: block;
        width: 51.915%;
        height: auto;
        margin: 0 auto 10px; }
    #entry h3 {
      margin: 0 0 7px;
      padding: 15px 0 0;
      line-height: 1.2;
      font-size: 16px;
      font-weight: bold; }
    #entry .caution {
      color: #c50018; }
    #entry h4 {
      margin: 0 0 5px;
      padding: 15px 0 0 10px;
      line-height: 1.2;
      font-size: 14px;
      font-weight: normal; }
    #entry p {
      margin: 5px 0 10px;
      padding: 0 0 0 12px;
      line-height: 1.4;
      font-size: 14px; }
    #entry ul {
      margin: 0;
      padding: 5px 0 10px 10px;
      line-height: 1.4;
      font-size: 14px; }
      #entry ul li {
        margin: 0 0 5px;
        padding-left: 1em;
        text-indent: -1em;
        list-style: disc inside; }
    #entry ol {
      margin: 0;
      padding: 5px 0 10px 10px;
      line-height: 1.4;
      font-size: 14px; }
      #entry ol li {
        margin: 0 0 5px;
        padding-left: 1em;
        text-indent: -1em;
        list-style: decimal inside; } }

/* -------------------------------------------------------------
スマホ
--------------------------------------------------------------*/
@media screen and (max-width: 959px) {
  .photocon-theme h1 {
    font-size: 22px !important;
    letter-spacing: 0.1em !important; }
  .photocon-theme h1 span {
    font-size: 10px !important; }
  .photocon-theme-lead {
    font-size: 14px !important; }
  .photocon-entry-btn {
    font-size: 1rem !important; }
  .pc_2017 {
    width: 100%;
    background-color: #2878bf;
    margin-top: 52px; }
    .pc_2017__kv {
      width: 100%; }
      .pc_2017__kv h2 {
        width: 100%; }
        .pc_2017__kv h2 img {
          width: 100%;
          height: auto; }
    .pc_2017__lead {
      background-color: #2878bf;
      padding: 20px; }
      .pc_2017__lead h3 {
        color: #ffde02;
        font-size: 20px;
        font-size: 1.25rem;
        font-weight: bold;
        line-height: 1.2;
        text-align: center;
        margin-bottom: 20px; }
      .pc_2017__lead p {
        color: #fff;
        font-size: 14px;
        font-size: 0.875rem;
        line-height: 1.6; }
    .pc_2017__content--1 {
      width: 100%;
      padding: 20px 10px;
      background-color: #fff; }
      .pc_2017__content--1 .content_inner--1 {
        max-width: 1000px;
        margin-bottom: 20px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .pc_2017__content--1 .content_inner--1 .content__item {
          width: 100%;
          box-sizing: border-box;
          margin-bottom: 20px; }
          .pc_2017__content--1 .content_inner--1 .content__item dl {
            max-width: 400px;
            margin: 0 auto;
            *zoom: 1; }
            .pc_2017__content--1 .content_inner--1 .content__item dl:before {
              content: " ";
              display: table; }
            .pc_2017__content--1 .content_inner--1 .content__item dl:after {
              content: " ";
              display: table;
              clear: both; }
            .pc_2017__content--1 .content_inner--1 .content__item dl dt {
              float: left;
              color: #fff;
              font-size: 14px;
              font-size: 0.875rem;
              line-height: 20px;
              text-align: center;
              background-color: #348ddb;
              padding: 0 10px;
              margin-right: 10px;
              width: 90px;
              border-radius: 10px;
              -webkit-border-radius: 10px;
              -moz-border-radius: 10px; }
            .pc_2017__content--1 .content_inner--1 .content__item dl dd {
              float: none;
              font-size: 14px;
              font-size: 0.875rem;
              line-height: 20px;
              margin-bottom: 10px; }
          .pc_2017__content--1 .content_inner--1 .content__item p {
            font-size: 14px;
            font-size: 0.875rem;
            padding-left: 0;
            text-align: center; }
            .pc_2017__content--1 .content_inner--1 .content__item p a {
              color: #ed001d;
              text-decoration: underline; }
        .pc_2017__content--1 .content_inner--1 .content__photobook {
          width: 100%;
          box-sizing: border-box; }
          .pc_2017__content--1 .content_inner--1 .content__photobook img {
            width: 100%;
            height: auto; }
          .pc_2017__content--1 .content_inner--1 .content__photobook p {
            font-size: 14px; }
      .pc_2017__content--1 .content_inner--2 img {
        width: 100%;
        height: auto;
        box-shadow: rgba(105, 105, 105, 0.9) 0px 0px 5px; }
      .pc_2017__content--1 .content_inner--2 p {
        text-align: left; }
    .pc_2017__content--2 {
      width: 100%;
      padding: 20px 10px;
      background-color: #fff; }
      .pc_2017__content--2 h4 {
        color: #333;
        font-size: 20px;
        font-weight: bold;
        line-height: 1.2;
        text-align: center;
        margin-bottom: 20px; }
      .pc_2017__content--2 .img__photocon {
        margin-bottom: 20px; }
        .pc_2017__content--2 .img__photocon img {
          width: 100%;
          height: auto; }
      .pc_2017__content--2 .btn__photocon a {
        color: #333;
        font-size: 16px;
        line-height: 1.2;
        text-align: center;
        padding: 10px;
        display: block;
        border: solid 1px #333;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -moz-transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease; }
        .pc_2017__content--2 .btn__photocon a:hover {
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
          filter: alpha(opacity=70);
          -moz-opacity: 0.7;
          -webkit-opacity: 0.7;
          opacity: 0.7; }
    .pc_2017__content--3 {
      width: 100%;
      padding: 20px 10px;
      background-color: #4a4a4a; }
      .pc_2017__content--3 h4 {
        text-indent: -9999px;
        background: url(../img/ttl_howto.png) center center no-repeat;
        background-size: cover;
        max-width: 100%;
        height: 0;
        padding-top: 5.7077625%;
        margin-bottom: 20px; }
      .pc_2017__content--3 h5 {
        color: #fff;
        font-size: 16px;
        padding-left: 20px;
        margin-bottom: 0.5em;
        position: relative; }
        .pc_2017__content--3 h5:before {
          position: absolute;
          content: "■";
          left: 0; }
      .pc_2017__content--3 ul {
        color: #fff;
        font-size: 14px;
        margin-bottom: 1em; }
        .pc_2017__content--3 ul li {
          padding-left: 20px;
          position: relative; }
          .pc_2017__content--3 ul li:before {
            position: absolute;
            content: "※";
            font-size: 10px;
            left: 0;
            top: 5px; }
    .pc_2017__content--btn {
      width: 100%;
      background-color: #2878bf;
      padding: 30px 10px; }
      .pc_2017__content--btn a {
        color: #333;
        font-size: 16px;
        line-height: 1.2;
        text-align: center;
        max-width: 700px;
        background-color: #ffde02;
        display: block;
        padding: 20px;
        padding-right: 40px;
        margin: 0 auto;
        position: relative;
        -moz-transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease; }
        .pc_2017__content--btn a:after {
          position: absolute;
          content: "";
          background: url(../img/arrow.png) 0 0 no-repeat;
          width: 10px;
          height: 18px;
          top: calc(50% - 9px);
          right: 10px; }
        .pc_2017__content--btn a:hover {
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$value)";
          filter: alpha(opacity=70);
          -moz-opacity: 0.7;
          -webkit-opacity: 0.7;
          opacity: 0.7; }
  /* #entry -------- */
  #entry {
    padding: 8% 0 12%; }
    #entry section {
      width: 96%; }
    #entry h2 {
      margin: 0 0 4%;
      font-size: 14px; }
      #entry h2 img {
        display: block;
        width: 58.316%;
        height: auto;
        margin: 0 auto 10px; }
    #entry h3 {
      margin: 0 0 1%;
      padding: 4% 0 0;
      font-size: 14px; }
    #entry h4 {
      margin: 0 0 1%;
      padding: 2% 0 0 1%;
      font-size: 14px; }
    #entry p {
      margin: 1% 0 2%;
      padding: 0 1%;
      font-size: 14px; }
    #entry ul {
      margin: 0;
      padding: 1% 1% 2%;
      font-size: 14px; }
      #entry ul li {
        margin: 0 0 1.5%; } }
