@charset "utf-8";

/* global-menu-responsive */
body {
  min-width: inherit;
}

.s5-pageHeader__inner {
  max-width: 1260px !important;
}

.s5-pageHeader,
.s5-frontLogin,
.s5-allProducts,
.s5-pageFooter {
  min-width: inherit;
}

.s5-pageFooter .s5-pageFooter__inner {
  width: auto !important;
}

div#global #header {
  min-width: inherit;
}

div#global #header .header-wrap {
  min-width: inherit;
}

div#global #header .header-wrap .header_logo {
  margin-right: -143px;
}

div#global #header .header-wrap .header_logo .header_logo_inr {
  margin-right: 143px;
}

div#global #header .header-wrap #header-menu {
  min-width: 143px;
}

div#global #header {
  min-width: inherit;
}

div#global #header .header-wrap {
  min-width: inherit;
}

div#global #header .header-wrap .header_logo {
  margin-right: -143px;
}

div#global #header .header-wrap .header_logo .header_logo_inr {
  margin-right: 143px;
}

div#global #header .header-wrap #header-menu {
  min-width: 143px;
}

div#global #header {
  min-width: inherit;
}

div#global #header .header-wrap {
  min-width: inherit;
}

div#global #header .header-wrap .header_logo {
  margin-right: -143px;
}

div#global #header .header-wrap .header_logo .header_logo_inr {
  margin-right: 143px;
}

div#global #header .header-wrap #header-menu {
  min-width: 143px;
}

div#global #header {
  min-width: inherit;
}

div#global #header .header-wrap {
  min-width: inherit;
}

div#global #header .header-wrap .header_logo {
  margin-right: -143px;
}

div#global #header .header-wrap .header_logo .header_logo_inr {
  margin-right: 143px;
}

div#global #header .header-wrap #header-menu {
  min-width: 143px;
}

div#global #header {
  min-width: inherit;
}

div#global #header .header-wrap {
  min-width: inherit;
}

div#global #header .header-wrap .header_logo {
  margin-right: -143px;
}

div#global #header .header-wrap .header_logo .header_logo_inr {
  margin-right: 143px;
}

div#global #header .header-wrap #header-menu {
  min-width: 143px;
}

#pageTop.static {
  margin-top: -40px;
  position: relative;
}

#page_top {
  bottom: 30px;
  display: none;
  position: fixed;
  right: 30px;
  z-index: 10;
}

#page_top>a {
  background: rgba(0, 0, 0, .3) url(/assets/images/common/icon_arrow-t-w.png) 49.5% 50% no-repeat;
  display: inline-block;
  padding: 25px 25px;
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media screen and (max-width: 640px) {
  .s5-pageHeader__inner {
    padding: 0 !important;
  }

  div#global #user_data {
    display: none;
  }

  div#global #header .header-wrap {
    padding: 0 15px !important;
  }

  div#global #header .header-wrap:before,
  div#global #header .header-wrap:after {
    content: "";
    display: block;
    overflow: hidden;
  }

  div#global #header .header-wrap:after {
    clear: both;
  }

  div#global #header .header-wrap .header_logo {
    margin-right: 0;
    width: auto;
  }

  div#global #header .header-wrap .header_logo .header_logo_inr {
    margin-right: 0;
  }

  div#global #header .header-wrap .header_logo .header_logo_inr .logo-data {
    margin-top: 15px;
  }

  div#global #header .header-wrap .header_logo .header_logo_inr .logo-data>img {
    width: 78px;
  }

  div#global #header .header-wrap .header_logo .header_logo_inr .logo-data>p {
    display: block;
    margin-left: 0;
    margin-top: 7px;
    width: 160px;
  }

  div#global #header .header-wrap .header_logo .header_logo_inr .logo-data>p span {
    margin-left: 0;
  }

  div#global #header .header-wrap #header-menu {
    float: right;
    min-width: 107px;
  }

  div#global #header .header-wrap #header-menu>ul>li {
    height: 74px;
    padding: 0 10% !important;
    width: 50%;
  }

  div#global #header .header-wrap #header-menu>ul>li:first-child {
    width: 50%;
  }

  div#global #header .header-wrap #header-menu>ul>li a i {
    line-height: 74px;
    margin-top: 0 !important;
    vertical-align: middle;
  }

  div#global #header .header-wrap #header-menu>ul>li a i.ico.shosinsya {
    background: url(/assets/images/common/shosinsya.svg) left 50% no-repeat;
    background-size: auto 31px;
    height: 100%;
  }

  div#global #header .header-wrap #header-menu>ul>li a .menu-name {
    display: none;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul {
    padding-top: 0;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div {
    float: none;
    width: 100%;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div.navi_column2,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div.navi_column2,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div.navi_column2,
  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div.navi_column3,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div.navi_column3,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div.navi_column3,
  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div.navi_column4,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div.navi_column4,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div.navi_column4 {
    margin-top: -10px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div.navi_column2 .menu-category:first-child,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div.navi_column2 .menu-category:first-child,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div.navi_column2 .menu-category:first-child,
  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div.navi_column3 .menu-category:first-child,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div.navi_column3 .menu-category:first-child,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div.navi_column3 .menu-category:first-child,
  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div.navi_column4 .menu-category:first-child,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div.navi_column4 .menu-category:first-child,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div.navi_column4 .menu-category:first-child {
    margin-bottom: 0;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div .menu-category,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div .menu-category,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div .menu-category {
    border-bottom: 1px solid #d5d5d5;
    padding: 15px 15px 15px 15px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div .menu-category+.menu_section,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section {
    margin-bottom: 10px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div .menu-category+.menu_section+.menu_section,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section+.menu_section,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section+.menu_section {
    margin-bottom: 10px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div .menu-category+.menu_section+.menu_section+.menu-category,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section+.menu_section+.menu-category,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section+.menu_section+.menu-category {
    margin-bottom: 10px;
    margin-top: -10px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div .menu-category+.menu_section+.menu-category,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section+.menu-category,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div .menu-category+.menu_section+.menu-category {
    margin-bottom: 0;
    margin-top: -10px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div .menu-category_sub,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div .menu-category_sub,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div .menu-category_sub {
    border-bottom: 1px solid #d5d5d5;
    padding: 0 15px 10px 15px;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div ul,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div ul,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div ul {
    padding: 0 0 0 0;
  }

  div#global #header .categoryHeader .nav .nav_c_li>ul>li>.clearfix>div ul>li,
  div#global #header .categoryHeader .nav #alpha_cafe #container #contents section#sec06 .rank-col .nav_c_li>ul>li>.note-right>div ul>li,
  #alpha_cafe #container #contents section#sec06 .rank-col div#global #header .categoryHeader .nav .nav_c_li>ul>li>.note-right>div ul>li {
    border-bottom: 1px solid #d5d5d5;
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    padding: 10px 15px 10px 15px;
    text-indent: 0;
  }

  div#global #header .categoryHeader .nav .nav_c_li {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  div#global #header .categoryHeader .nav .nav_close {
    background: #fff;
    margin-top: -10px;
    padding-left: 15px !important;
    padding-right: 15px !important;
    position: relative;
    z-index: 1;
  }

  div#global.fixed #header .header-wrap #header-menu>ul>li {
    height: 50px;
  }

  div#global.fixed #header .header-wrap #header-menu>ul>li a i {
    line-height: 50px;
  }

  div#global.fixed #header .header-wrap #header-menu>ul>li a i.ico.shosinsya {
    height: 100%;
  }

  div#global.fixed #header .header-wrap #header-menu>ul>li a .menu-name {
    display: none;
  }

  #pageTop.static {
    margin-top: 20px;
    position: static;
  }
}

/* ------------------------------------------------
定義
------------------------------------------------ */
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

.en {
  font-family: "EB Garamond", serif;
}

.en-number {
  font-family: "Roboto", "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.align-center {
  margin: 0 auto;
  text-align: center;
}

.txt-center {
  text-align: center;
}

.img-responsive {
  height: auto;
  max-width: 100%;
}

.img-fluid {
  height: auto;
  width: 100%;
}

.clearfix::after {
  clear: both;
  content: "";
  display: block;
}

.disp-block {
  display: block;
}

.f-normal {
  font-weight: normal;
}

.f-bold {
  font-weight: bold;
}

.f-color-fff {
  color: #fff !important;
}

.f-weight-700 {
  font-weight: 700;
}

.f-size01 {
  font-size: 1.3rem;
}

.flexible-layout {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.go-to-result {
  color: crimson !important;
  text-decoration: underline !important;
}

.go-to-result:hover {
  color: crimson !important;
  text-decoration: none !important;
}

.box-shadow {
  box-shadow: 0 0 10px 2px rgba(0, 0, 0, .1);
  transition: .3s;
}

.box-shadow:hover {
  box-shadow: 0 0 20px 6px rgba(0, 0, 0, .2);
}

.img-fade {
  transition: .3s;
}

.img-fade:hover {
  opacity: .5;
}

#info-contest-wrapper p {
  margin: 0;
}

.txt-link {
  color: #0f0fdf !important;
  text-decoration: underline !important;
}

.txt-link:hover {
  color: #0f0fdf !important;
  text-decoration: none !important;
}

.pbtm-1rem {
  padding-bottom: 1rem;
}

/* ------------------------------------------------
共通
------------------------------------------------ */
#info-contest-wrapper {
  color: #333;
  font-family: "游ゴシック", "YuGothic", "Meiryo", "メイリオ", "Lucida Grande", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3";
  font-size: 100%;
  line-height: 1;
}

#photo-contest-wrapper {
  font-size: 1rem;
}

.important-text {
  color: #c00;
}

/* メインビジュアル
******************************* */
#main-title {
  margin: 0;
}

/* 説明文
******************************* */
#info-contest-wrapper .description {
  line-height: 1.6;
  padding: 0 15px;
}

/* コンテンツ共通
******************************* */
.section-contents-title .en {
  color: #10386b;
  letter-spacing: -.085rem;
}

.section-contents-title .jp {
  color: #333;
  font-size: 1rem;
}

.section-contents .section-contents-title .en {
  letter-spacing: .05rem;
}

.section-contents .section-contents-title .jp {
  font-size: 1rem;
}

.photo-top-txt {
  display: block;
}

/* 審査員
******************************* */
.profile {
  line-height: 1.6;
}

/* 撮影の心得
******************************* */
.photographing-knowledge-container h3 {
  color: #13368f;
  margin: 0 !important;
}


.photographing-knowledge-container .point-container:last-child {
  border-bottom: none;
}

.marker-pen {
  background: linear-gradient(transparent 60%, #ff6 60%);
  padding: 0 5px;
}

.photographing-knowledge-container .point-title-jp {
  margin: 0;
}

/* 賞
******************************* */
#bg-prize {
  background: url("../img/bg-prize.jpg") center bottom no-repeat;
  background-position: center bottom;
  background-size: cover;
  height: auto;
  width: 100%;
}

.prize-contents {
  background: rgb(37, 65, 143);
  background: -moz-linear-gradient(-45deg, rgba(37, 65, 143, 1) 0%, rgba(9, 36, 122, 1) 100%);
  background: -webkit-linear-gradient(-45deg, rgba(37, 65, 143, 1) 0%, rgba(9, 36, 122, 1) 100%);
  background: linear-gradient(135deg, rgba(37, 65, 143, 1) 0%, rgba(9, 36, 122, 1) 100%);
  box-shadow: 0 0 10px 2px #333;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#25418f', endColorstr='#09247a', GradientType=1);
}

.prize-contents.peco-special {
  background: rgb(237, 204, 118);
  background: -moz-linear-gradient(-45deg, rgba(237, 204, 118, 1) 0%, rgba(232, 189, 77, 1) 50%, rgba(208, 150, 0, 1) 100%);
  background: -webkit-linear-gradient(-45deg, rgba(237, 204, 118, 1) 0%, rgba(232, 189, 77, 1) 50%, rgba(208, 150, 0, 1) 100%);
  background: linear-gradient(135deg, rgba(237, 204, 118, 1) 0%, rgba(232, 189, 77, 1) 50%, rgba(208, 150, 0, 1) 100%);
  box-shadow: 0 0 10px 2px #333;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#edcc76', endColorstr='#d09600', GradientType=1);
}

.prize-contents.winning {
  background: rgb(249, 167, 22);
  background: -moz-linear-gradient(-45deg, rgba(249, 167, 22, 1) 0%, rgba(249, 167, 22, 1) 50%, rgba(242, 110, 34, 1) 100%);
  background: -webkit-linear-gradient(-45deg, rgba(249, 167, 22, 1) 0%, rgba(249, 167, 22, 1) 50%, rgba(242, 110, 34, 1) 100%);
  background: linear-gradient(135deg, rgba(249, 167, 22, 1) 0%, rgba(249, 167, 22, 1) 50%, rgba(242, 110, 34, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9a716', endColorstr='#f26e22', GradientType=1);
}

.prize-title {
  color: #fff !important;
  margin: inherit !important;
}

.prize-title span {
  color: #fff;
}

.prize-privilege span {
  color: #fff;
  display: block;
}

.prize-privilege-comment {
  color: #fff;
  line-height: 1.35;
}

.participation-award-txt,
.result-date-txt {
  color: #fff;
}

.prize-privilege .en-number {
  text-shadow: -1px -2px 4px rgba(0, 0, 0, .1), -1px -1px rgba(0, 0, 0, .15);
}

/* ついて
******************************* */
.about-tetsudocom-section-inner h2 {
  align-items: center;
  display: flex;
  justify-content: center;
}

/* 応募要項
******************************* */
.guide-section .guide-headline {
  background-color: #f5f5f5;
}

.announcement-inner ul li {
  list-style-type: decimal;
}

.announcement-inner ul {
  margin: 0;
  padding-left: 20px;
}

/* 告知エリア
******************************* */
.announcement {
  border: 3px solid #e8380d;
  text-align: center;
}

/* ------------------------------------------------
スマホ
------------------------------------------------ */
@media screen and (max-width: 640px) {
  .pc-only {
    display: none;
  }

  .sp-only,
  .xs-sp-only {
    display: block;
  }

  /* 説明文
	******************************* */
  #info-contest-wrapper .description {
    padding: 20px 15px 0;
    text-align: left;
  }

  /* コンテンツ共通
	******************************* */
  .section-contents-title {
    line-height: 1.85rem;
    margin-bottom: 20px;
  }

  .section-contents {
    padding: 30px 15px;
  }

  .section-contents-title .en {
    font-size: 2.25rem;
  }

  /* 審査員
	******************************* */
  .judge-section01 {
    margin: 0 auto 40px;
  }

  .pht-profile {
    margin-bottom: 5px;
    max-width: 150px;
  }

  .pht-profile .person-category {
    font-size: .8rem;
    line-height: 1.3;
    padding: 10px 0;
  }

  .pht-profile .person-name {
    color: #111;
    font-size: 1.35rem;
    padding-bottom: 5px;
  }

  .pht-profile .person-en {
    color: #b6b6b6;
    font-family: "Roboto", sans-serif;
    font-size: .7rem;
  }

  .profile-txt {
    font-size: .9rem;
    padding-bottom: 20px;
  }

  .profile-txt:last-child {
    padding-bottom: 0;
  }

  .bnr-a-universe {
    margin-top: 10px;
    max-width: 300px;
  }

  /* 撮影の心得
	******************************* */
  .photographing-knowledge-container {
    padding: 40px 0 0;
  }

  /* .photographing-knowledge-container .point-container {
    margin-bottom: 20px;
    padding-bottom: 20px;
  } */

  .photographing-knowledge-container .inner-title {
    margin-bottom: 30px;
  }

  .photographing-knowledge-container h3 {
    font-size: 1.2rem;
    line-height: 1.3;
    padding-bottom: 10px !important;
  }

  .photographing-knowledge-container .sub-title {
    font-size: .85rem;
    line-height: 1.3;
  }

  .photographing-knowledge-container .point-title-contents {
    margin-bottom: 15px;
  }

  .photographing-knowledge-container .point {
    font-size: 28px;
    padding-bottom: 15px;
  }

  .photographing-knowledge-container .point-title-jp {
    font-size: 18px;
    margin: 0 0 10px !important;
  }

  .point-container .row {
    margin: 0 -15px;
  }

  .point-container .photo {
    padding: 0 15px;
  }

  .point-container .photo span {
    margin: 10px 0 15px;
  }

  .comment {
    font-size: 14px;
    line-height: 1.5;
    padding: 0;
  }

  /* 賞
	******************************* */
  #bg-prize {
    background-position: center top !important;
  }

  .prize-section-wrapper {
    width: 100%;
  }

  .prize-contents {
    margin: 0 0 20px !important;
  }

  .prize-title {
    font-size: 1.25rem;
    margin: 0 !important;
    padding: 20px 10px !important;
    text-align: center;
  }

  .prize-title span {
    font-size: 1rem;
  }

  .prize-privilege {
    font-size: .875rem;
    padding: 0 10px 15px;
  }

  .prize-privilege .en-number {
    font-size: 1.5rem;
  }

  .prize-privilege-comment {
    font-size: .775rem;
    margin-top: -15px !important;
    padding: 5px 0 20px;
  }

  .participation-award-txt {
    font-size: 1rem;
    line-height: 1.35;
    text-align: center;
  }

  .participation-award-txt span {
    font-size: 1.25rem;
    margin-bottom: 15px;
  }

  .result-date-txt {
    font-size: 1.25rem;
    padding: 30px 15px 10px;
    text-align: center;
  }

  .result-date-txt span {
    margin-bottom: 15px;
  }

  /* about
	******************************* */
  .about-section-inner {
    border: 10px solid #09247a;
    margin: 30px auto;
    padding: 15px 20px 20px;
  }


  .about-section-contents .txt {
    font-size: 14px;
    line-height: 1.7;
  }


  /* 応募要項
	******************************* */
  .announcement {
    font-size: .85rem;
    line-height: 1.5;
    padding: 18px 15px;
  }

  .guide-section-wrapper .items {
    margin-bottom: 30px !important;
  }

  .announcement-inner .komidashi {
    margin: 0 0 10px !important;
  }

  .announcement-inner .txt {
    line-height: 1.5;
    margin-bottom: 10px !important;
  }

  .announcement-inner .list {
    line-height: 1.5;
  }

  .announcement-inner .list li {
    margin-bottom: 10px;
  }

  .guide-section {
    margin-bottom: 40px;
  }

  .guide-section .guide-headline {
    font-size: 1rem;
    line-height: 1.35;
    padding: 15px 15px 14px 15px;
  }

  .guide-section .guide-txt {
    line-height: 1.5;
  }
}

/* ------------------------------------------------
タブレット
------------------------------------------------ */
@media (min-width: 640px) and (max-width: 992px) {

  .pc-only,
  .xs-sp-only {
    display: none;
  }

  .sp-only {
    display: block;
  }

  /* メインビジュアル
	******************************* */
  #mainVisual-wrapper {
    background: url("../img/mainVisual.jpg") top center no-repeat;
    background-size: 688px;
    height: 370px;
    margin-top: 20px;
  }

  /* 説明文
	******************************* */
  #info-contest-wrapper .description {
    padding: 30px 15px 0;
    text-align: left;
  }

  /* コンテンツ共通
	******************************* */
  .section-contents-title {
    line-height: 2.15rem;
    margin-bottom: 20px;
  }

  .section-contents {
    padding: 30px 15px;
  }

  .section-contents-title .en {
    font-size: 2.5rem;
  }

  /* 審査員
	******************************* */
  .judge-section01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    margin: 0 auto 40px;
  }

  .pht-profile {
    min-width: 180px;
  }

  .pht-profile .person-category {
    font-size: .8rem;
    padding: 10px 0;
  }

  .pht-profile .person-name {
    color: #111;
    font-size: 1.35rem;
    padding-bottom: 5px;
  }

  .pht-profile .person-en {
    color: #b6b6b6;
    font-family: "Roboto", sans-serif;
    font-size: .7rem;
  }

  .profile {
    padding-left: 20px;
  }

  .profile-txt {
    padding-bottom: 30px;
  }

  .profile-txt:last-child {
    padding-bottom: 0;
  }

  .bnr-a-universe {
    margin-top: 10px;
    max-width: 300px;
  }

  /* 撮影の心得
	******************************* */
  .photographing-knowledge-container {
    margin: 40px auto;
    max-width: 1040px;
  }

  .photographing-knowledge-container .point-container {
    padding-bottom: 30px;
  }

  .photographing-knowledge-container .inner-title {
    margin-bottom: 40px;
  }

  .photographing-knowledge-container h3 {
    font-size: 1.35rem;
    line-height: 1.3;
    padding-bottom: 20px !important;
  }

  .photographing-knowledge-container .sub-title {
    font-size: 1rem;
  }

  .photographing-knowledge-container .point-title-contents {
    margin-bottom: 25px;
  }

  .photographing-knowledge-container .point {
    font-size: 35px;
    padding-bottom: 20px;
  }

  .photographing-knowledge-container .point-title-jp {
    font-size: 20px;
  }

  .point-container .row {
    display: flex;
    margin: 0 -15px;
  }

  .point-container .photo {
    padding: 0 15px;
    width: 35%;
  }

  .point-container .photo span {
    margin-top: 10px;
  }

  .comment {
    line-height: 1.5;
    padding: 0 15px;
    width: 65%;
  }

  /* 賞
	******************************* */
  /* 大賞と入選 */
  .grand-prize-section-inner .prize-contents-inner,
  .winning-prize-section-inner .prize-contents-inner {
    float: inherit;
    margin: 0 auto;
    width: 75%;
  }

  .prize-section-wrapper {
    width: 100%;
  }

  .prize-contents-inner {
    margin: 0 auto;
    padding: 0 0 1.5%;
    width: 75%;
  }

  .prize-title {
    font-size: 1.65rem;
    padding: 35px 15px !important;
    white-space: nowrap;
  }

  .prize-title span {
    font-size: 1rem;
  }

  .prize-privilege .en-number {
    font-size: 2.15rem;
    padding: 8px 15px 30px;
  }

  .prize-privilege-comment {
    font-size: .775rem;
    padding: 10px 0 0;
  }

  /* 入選 */
  .winning-prize-section-inner .prize-title {
    padding: 20px 15px !important;
  }

  .winning-prize-section-inner .prize-privilege .en-number {
    font-size: 2.25rem;
    padding: 8px 15px 20px;
  }

  /* **** */
  .participation-award-txt {
    font-size: 1rem;
    text-align: center;
  }

  .participation-award-txt span {
    font-size: 1.5rem;
    margin-bottom: 15px;
  }

  .result-date-txt {
    font-size: 1.5rem;
    padding: 50px 15px 30px;
    text-align: center;
  }

  .result-date-txt span {
    font-size: 1.5rem;
    margin-bottom: 15px;
  }

  /* about
	******************************* */
  .about-section-inner {
    border: 20px solid #09247a;
    margin: 30px 20px;
    padding: 20px 30px 30px;
  }


  .about-section-inner img {
    height: auto;
    max-width: 250px;
  }

  .about-section-contents .txt {
    font-size: 14px;
    line-height: 1.7;
  }

  .bnr-acafe-to-page {
    padding: 0 20px;
  }

  /* 応募要項
	******************************* */
  .guide-section-wrapper {
    margin: 0 auto;
    max-width: 1040px;
  }

  .guide-section-wrapper .items {
    margin-bottom: 30px !important;
  }

  .announcement {
    font-size: 1.15rem;
    padding: 30px;
  }

  .announcement-inner .komidashi {
    margin: 0 0 10px !important;
  }

  .announcement-inner .txt {
    line-height: 1.5;
    margin-bottom: 10px !important;
  }

  .announcement-inner .list {
    line-height: 1.5;
  }

  .announcement-inner .list li {
    margin-bottom: 10px;
  }

  .guide-section {
    margin-bottom: 30px;
  }

  .guide-section .guide-headline {
    font-size: 1.1rem;
    padding: 15px 15px 14px 15px;
  }

  .guide-section .guide-txt {
    line-height: 1.5;
  }
}

/* ------------------------------------------------
パソコン
------------------------------------------------ */
@media screen and (min-width: 992px) {
  .pc-only {
    display: block;
  }

  .sp-only,
  .xs-sp-only {
    display: none;
  }

  /* メインビジュアル
	******************************* */
  #mainVisual-wrapper {
    background: url("../img/mainVisual.jpg") top center no-repeat;
    background-size: 1080px;
    height: 580px;
    margin-top: 20px;
  }

  /* 説明文
	******************************* */
  #info-contest-wrapper .description {
    padding: 50px 15px 0;
    text-align: center;
  }

  /* コンテンツ共通
	******************************* */
  .section-contents-title {
    line-height: 2.25rem;
    margin-bottom: 35px;
  }

  .section-contents {
    padding: 40px 15px;
  }

  .section-contents-title .en {
    font-size: 2.8125rem;
  }

  /* 審査員
	******************************* */
  .judge-section01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    margin: 0 auto 40px;
    max-width: 840px;
  }

  .pht-profile {
    min-width: 200px;
  }

  .pht-profile .person-category {
    font-size: .875rem;
    line-height: 1.3;
    padding: 10px 0;
  }

  .pht-profile .person-name {
    color: #111;
    font-size: 1.625rem;
    padding-bottom: 5px;
  }

  .pht-profile .person-en {
    color: #b6b6b6;
    font-family: "Roboto", sans-serif;
    font-size: .85rem;
  }

  .profile {
    padding-left: 20px;
  }

  .profile-txt {
    padding-bottom: 40px;
  }

  .profile-txt:last-child {
    padding-bottom: 0;
  }

  .bnr-a-universe {
    margin-top: 10px;
    max-width: 350px;
  }

  /* 撮影の心得
	******************************* */
  .photographing-knowledge-container {
    margin: 40px auto !important;
    max-width: 1040px;
  }

  /* .photographing-knowledge-container .point-container {
    margin-bottom: 30px;
    padding-bottom: 30px;
  } */

  .photographing-knowledge-container .inner-title {
    margin-bottom: 20px;
  }

  .photographing-knowledge-container h3 {
    font-size: 35px;
    line-height: 1.3;
    padding-bottom: 20px !important;
  }

  .photographing-knowledge-container .sub-title {
    font-size: 1.15rem;
  }

  .photographing-knowledge-container .point-title-contents {
    margin-bottom: 25px;
  }

  .photographing-knowledge-container .point {
    font-size: 35px;
    padding-bottom: 20px;
  }

  .photographing-knowledge-container .point-title-jp {
    font-size: 30px;
  }

  .point-container .row {
    display: flex;
    margin: 0 -15px;
  }

  .point-container .photo {
    padding: 0 15px;
    width: 35%;
  }

  .point-container .photo span {
    margin-top: 10px;
  }

  .comment {
    line-height: 1.5;
    padding: 0 15px;
    width: 65%;
  }

  /* 賞
	******************************* */
  /* 大賞と入選 */
  .grand-prize-section-inner .prize-contents-inner,
  .winning-prize-section-inner .prize-contents-inner {
    float: inherit;
    margin: 0 auto;
    width: 33.333333%;
  }

  .prize-section-wrapper {
    margin: 0 auto;
    max-width: 1040px;
    width: 100%;
  }

  .prize-section01 {
    margin: 0 -1%;
  }

  .prize-contents-inner {
    float: left;
    padding: 0 .75%;
    width: 33.33333%;
  }

  .prize-title {
    font-size: 1.85rem;
    padding: 40px 15px !important;
    white-space: nowrap;
  }

  .prize-title span {
    font-size: 1.5rem;
  }

  .prize-privilege .en-number {
    font-size: 2.25rem;
    padding: 8px 15px 40px;
  }

  /* 入選 */
  .winning-prize-section-inner .prize-title {
    padding: 20px 15px !important;
  }

  .winning-prize-section-inner .prize-privilege .en-number {
    font-size: 2.25rem;
    padding: 8px 15px 20px;
  }

  .prize-contents.peco-special .prize-title {
    padding: 30px 15px 25px !important;
  }

  /* **** */
  .prize-privilege-comment {
    font-size: .8rem;
    padding: 10px 0;
  }

  .prize-section02 {
    padding: 35px 15px 25px;
  }

  .participation-award-txt {
    font-size: 1.2rem;
    text-align: center;
  }

  .participation-award-txt span {
    font-size: 1.5rem;
    margin-bottom: 15px;
  }

  .result-date-txt {
    font-size: 2rem;
    padding: 50px 15px 30px;
    text-align: center;
  }

  .result-date-txt span {
    font-size: 1.5rem;
    margin-bottom: 15px;
  }

  /* about
	******************************* */
  .about-section-inner {
    border: 30px solid #09247a;
    margin: 30px auto;
    max-width: 1200px;
    padding: 30px 40px 40px;
  }


  .about-section-contents .txt {
    font-size: 14px;
    line-height: 1.7;
  }

  /* 応募要項
	******************************* */
  .guide-section-wrapper {
    margin: 0 auto;
    max-width: 1040px;
  }

  .guide-section-wrapper .items {
    margin-bottom: 30px !important;
  }

  .announcement-inner .komidashi {
    margin: 0 0 10px !important;
  }

  .announcement-inner .txt {
    line-height: 1.5;
    margin-bottom: 10px !important;
  }

  .announcement-inner .list {
    line-height: 1.5;
  }

  .announcement-inner .list li {
    margin-bottom: 10px;
  }

  .announcement-inner .list li:last-child {
    margin-bottom: 0;
  }

  .announcement {
    font-size: 1.5rem;
    margin: 0 auto !important;
    padding: 40px;
    width: 745px;
  }

  .guide-section {
    margin-bottom: 40px;
  }

  .guide-section .guide-headline {
    font-size: 1.15rem;
    padding: 15px 15px 14px 20px;
  }

  .guide-section .guide-txt {
    line-height: 1.5;
  }
}

/* 応募導線追加2018.8.23--------------------------------------*/
@media screen and (min-width: 641px) {
  .items .list .list_indent {
    padding-left: 40px;
  }
}

.btn-entry-form-wrap {
  margin: 0 0 40px;
  width: 100%;
}

.entry-form-button-area {
  font-size: 1rem !important;
}

.btn-entry-form {
  background-color: #000 !important;
  color: #fff !important;
  text-decoration: none !important;
  transition: all .3s;
}

.btn-entry-form:hover {
  -webkit-box-shadow: 0 5px 12px 5px #c6c6c6;
  box-shadow: 0 5px 12px 5px #c6c6c6;
}

@media screen and (min-width: 992px) {
  .btn-entry-form {
    background-color: #000;
    box-shadow: 0 0 6px 3px #d6d6d6;
    display: block;
    font-size: 1.35rem;
    margin: 0 auto;
    max-width: 350px;
    padding: 25px 20px;
  }
}

@media (max-width: 992px) and (min-width: 640px) {
  .btn-entry-form {
    background-color: #000;
    box-shadow: 0 0 6px 3px #d6d6d6;
    display: block;
    margin: 0 auto 20px;
    max-width: 400px;
    padding: 20px 20px;
  }

  .row-lens-photo .btn-entry-form {
    align-items: center;
    display: grid;
    height: 80px;
    line-height: 1.3;
  }
}

@media screen and (max-width: 640px) {
  .btn-entry-form {
    box-shadow: 0 0 6px 3px #d6d6d6;
    display: block;
    font-size: 1.4rem;
    margin: 0 auto 10px;
    max-width: 400px;
    padding: 15px;
  }
}

/* 応募導線削除2018.12.03--------------------------------------*/
@media screen and (min-width: 320px) {
  .btn-entry-form-wrap {
    margin: 10px auto 20px;
    max-width: 450px;
    position: relative;
  }

  .btn-entry-form-wrap .bg-black {
    background-color: rgba(0, 0, 0, .75);
    display: block;
    padding: 5px 15px 25px;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 11;
  }

  .btn-entry-form-wrap .bg-black span {
    color: #fff !important;
    display: block;
    font-size: 2rem;
    padding: 25px 0 0;
    text-align: center;
  }
}

@media screen and (max-width: 640px) {
  .btn-entry-form-wrap .bg-black span {
    font-size: 1.5rem;
  }

  .lens-photo {
    margin-bottom: 10px;
  }
}


/* おすすめレンズ */
.m-auto {
  margin: 0 auto;
}

.recommended-lens {
  border: 1px solid #ddd;
  margin: 40px auto;
  max-width: 1200px;
  padding: 40px 40px 0;
  width: 100%;
}

.recommended-lens-title {
  color: #13368f;
  margin: 0 !important;
}

.recommended-lens-container .row {
  display: flex;
  padding-bottom: 40px;
}

.recommended-lens-container .btn-entry-form-wrap {
  margin: 0 auto;
}

.btn {
  background-color: #ddd;
  box-shadow: 0 0 6px 3px #d6d6d6;
  display: block;
  text-align: center;
}

.line {
  border: 1px solid #ddd;
  margin: 20px 0;
}

.lens-comment.comment {
  padding: 40px 0;
  width: 100%;
}

@media screen and (max-width: 640px) {
  .recommended-lens {
    border: 1px solid #ddd;
    margin: 20px auto;
    padding: 0;
  }

  .banner_container {
    margin: 20px auto !important;
    padding: 30px 1rem !important;
  }

  .recommended-lens-title {
    color: #13368f;
    font-size: 1.2rem;
    line-height: 1.3;
    margin: 0 !important;
    padding-bottom: 10px !important;
  }


  .recommended-lens-container h3 {
    font-size: 24px;
    margin: 20px 0 10px !important;
  }

  .recommended-lens-container .row {
    display: block;
    margin: 0 auto;
    padding: .2rem 1rem 1rem 1rem;
  }

  .comment-detail {
    line-height: 1.5;
    padding: 0 15px;
    width: 100%;
  }

  p.point.txt-center.recommended-lens-name.\{ {
    font-size: 20px;
    font-weight: bold;
  }

  .btn {
    font-size: 1.35rem;
    margin: 0 auto;
    max-width: 350px;
    padding: 25px 20px;
  }

  .lens-name {
    font-size: 18px;
    margin: 15px auto 10px;
  }
}

@media (max-width: 992px) and (min-width: 640px) {
  .recommended-lens-title {
    font-size: 1.35rem;
    line-height: 1.3;
    padding-bottom: 20px !important;
  }

  .recommended-lens-container h3 {
    font-size: 1.35rem;
    margin: 20px 0 25px !important;
  }


  .recommended-lens-container .photo {
    padding: 0 15px;
    width: 35%;
  }


  .comment-detail {
    line-height: 1.5;
    padding: 0 15px;
    width: 100%;
  }

  p.point.txt-center.recommended-lens-name.\{ {
    font-size: 25px;
    font-weight: bold;
  }

  .btn {
    font-size: 1.35rem;
    margin: 0 auto;
    max-width: 350px;
    padding: 25px 20px;
  }

  .lens-name {
    font-size: 20px;
    margin-top: 20px;
  }
}

@media screen and (min-width: 992px) {
  .recommended-lens-title {
    font-size: 35px;
    line-height: 1.3;
    padding-bottom: 20px !important;
  }

  .recommended-lens-container {
    margin: 25px auto;
    padding: 1rem;
  }

  .recommended-lens-container h3 {
    font-size: 35px;
    margin: 20px 0 0 !important;
  }

  .recommended-lens-wrapper {
    display: flex;
    gap: 1rem;
  }

  .recommended-lens-container .photo {
    padding: 0 15px;
    width: 35%;
  }

  .comment-detail {
    line-height: 1.5;
    padding: 0 15px;
    width: 100%;
  }

  p.point.txt-center.recommended-lens-name.\{ {
    font-size: 30px;
    font-weight: bold;
  }

  .example-photo {
    padding: 0 15px;
    width: 35%;
  }

  .btn {
    font-size: 1.35rem;
    margin: 0 auto;
    max-width: 350px;
    padding: 25px 20px;
  }

  .lens-name {
    font-size: 30px;
    margin-top: 20px;
  }
}

.banner_container {
  background-color: #eee;
  margin: 40px auto;
  padding: 60px 0;
}

.pt-10 {
  padding-top: 10px;
}

.pt-20 {
  padding-top: 20px;
}

.pb-20 {
  padding-bottom: 20px;
}

.pb-30 {
  padding-bottom: 30px;
}

.point-container .photo {
  display: grid;
  justify-content: center;
}