@charset "UTF-8";
/* Scss Document */
#wrapper {
  width: 100%;
  overflow: hidden; }

.pc {
  display: block; }
  @media screen and (max-width: 768px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp {
      display: block; } }

a {
  color: #ef7508;
  cursor: pointer !important; }

.kv {
  text-align: center;
  width: 100%;
  background: #3ec5c7;
  box-sizing: border-box;
  margin: 0 auto; }
  .kv img {
    max-width: 1500px;
    width: 100%; }
  .kv .sp_main {
    display: none; }
  @media screen and (max-width: 768px) {
    .kv img {
      width: 100%; }
    .kv .sp_main {
      display: block; }
    .kv .pc_main {
      display: none; } }

.contsIn {
  width: 1000px;
  margin: auto;
  overflow: hidden; }
  @media screen and (max-width: 1000px) {
    .contsIn {
      width: 90%;
      margin: 0 auto; } }

.contsIn2 {
  width: 960px;
  margin: auto;
  overflow: hidden; }
  @media screen and (max-width: 1000px) {
    .contsIn2 {
      max-width: 1000px;
      width: 90%;
      margin: 0 auto; } }

.left {
  float: left; }

.right {
  float: right; }

.h2_bg {
  background-repeat: repeat-x;
  margin: 80px 0 40px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .h2_bg {
      margin: 40px 0; } }

h2 {
  background-color: #fff;
  display: inline-block;
  padding: 0px 10px;
  font-size: 30px;
  color: #575757; }
  @media screen and (max-width: 800px) {
    h2 {
      font-size: 22px; } }

p.nml {
  font-size: 16px;
  color: #575757;
  line-height: 1.6; }
  @media screen and (max-width: 800px) {
    p.nml {
      margin-top: 20px; } }
  p.nml em {
    font-style: normal;
    font-weight: bold; }

a {
  color: #1c5dae;
  border-style: none;
  border: 0;
  outline: none; }
  a img {
    border-style: none;
    border: 0;
    outline: none; }

@media screen and (max-width: 800px) {
  .txaR {
    text-align: left; } }
/*---------------mv---------------
------------------------------------------*/
.mv_bg {
  background-image: url(../img/main_bg.jpg);
  background-repeat: repeat-y;
  background-position: center;
  padding-top: 30px; }

#header {
  width: 100%;
  background-image: url(../img/header_bg.png);
  background-repeat: repeat-x;
  height: 67px;
  padding-top: 8px; }
  #header img {
    display: block;
    margin: auto;
    padding: 12px 0; }

#mv img {
  display: block;
  margin: auto;
  padding: 30px 0 50px; }

/*---------------sec01---------------
------------------------------------------*/
#sec01 {
  background-color: #F6F6F6;
  text-align: center;
  padding: 30px 0; }
  #sec01 h2 {
    background-color: #F6F6F6; }
  #sec01 p {
    line-height: 2.2;
    font-size: 16px; }
    #sec01 p .sp_br {
      display: none; }
      @media screen and (max-width: 767px) {
        #sec01 p .sp_br {
          display: block; } }
    @media screen and (max-width: 767px) {
      #sec01 p {
        line-height: 2; } }

.organizer {
  font-size: 12px;
  text-align: center;
  margin: 10px 0 0 0; }

/*---------------assignment---------------
------------------------------------------*/
.assignment {
  width: 90%;
  margin: 80px auto;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .assignment {
      margin: 40px auto; } }
  .assignment p .sp_br {
    display: none; }
    @media screen and (max-width: 767px) {
      .assignment p .sp_br {
        display: block; } }
  .assignment .lens {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 70px;
    color: #9d9d9d; }
    .assignment .lens img {
      padding-right: 20px; }
    .assignment .lens .txt_lens .sp_br {
      display: none; }
      @media screen and (max-width: 767px) {
        .assignment .lens .txt_lens .sp_br {
          display: block; } }
    @media screen and (max-width: 767px) {
      .assignment .lens .txt_lens {
        text-align: left; } }

/*---------------sec02---------------
------------------------------------------*/
#sec02 h3 {
  background-color: #3ec5c7;
  color: #faff70;
  padding: 9px 0;
  text-align: center;
  font-size: 20px; }
  @media screen and (max-width: 768px) {
    #sec02 h3 {
      font-size: 16px; } }

.come-on {
  background-color: #ffffff !important;
  color: #3ec5c7 !important;
  border-top: solid 1px #3ec5c7;
  border-bottom: solid 1px #3ec5c7;
  padding: 15px 0 !important;
  margin-top: 50px; }
  .come-on span {
    font-size: 14px; }

.pdf_btn {
  width: 390px;
  margin: 0 auto;
  padding-bottom: 90px; }
  @media screen and (max-width: 1000px) {
    .pdf_btn {
      width: 45%; } }
  @media screen and (max-width: 767px) {
    .pdf_btn {
      width: 90%; } }

.ttl {
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 15px;
  color: #ef7508; }

/*---------------sec03---------------
------------------------------------------*/
#sec03 .clearfix {
  margin-top: 40px;
  margin-bottom: 40px; }
#sec03 .left {
  width: 180px; }
#sec03 .right {
  width: 740px; }
  #sec03 .right p.ttl {
    color: #575757;
    font-size: 24px;
    margin: 8px 0 15px; }
  #sec03 .right a img {
    display: inline-block;
    margin: 10px 15px 0 0; }

/*---------------sec04---------------
------------------------------------------*/
.work {
  margin-top: 50px;
  text-align: center; }
  .work a {
    display: block; }
  .work p .school {
    margin-top: 10px;
    display: block;
    font-size: 13px;
    line-height: 1.4;
    color: #575757;
    text-align: center; }
  .work p .name {
    margin-top: 5px;
    display: block;
    font-size: 16px;
    line-height: 1.4;
    color: #575757;
    text-align: center; }
  .work p .title {
    margin-top: 8px;
    display: block;
    font-size: 13px;
    font-weight: bold;
    line-height: 1.4;
    color: #333333;
    text-align: center; }
  .work .sbt_img {
    width: 495px; }
    @media screen and (max-width: 767px) {
      .work .sbt_img {
        width: 100%; } }
  .work .Eva02 {
    margin: 20px auto 0 auto;
    border-top: solid 4px #3ec5c7;
    background-color: #f6f6f6;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    width: 680px; }
    @media screen and (max-width: 767px) {
      .work .Eva02 {
        width: 100%; } }
    .work .Eva02 h4 {
      color: #3ec5c7;
      font-size: 18px;
      margin: 20px 0; }
    .work .Eva02 p {
      color: #333333;
      font-size: 14px;
      text-align: left;
      letter-spacing: -1px;
      line-height: 1.75;
      padding: 0 30px 30px 30px; }
      .work .Eva02 p a {
        display: inline;
        color: #ef256b;
        font-weight: 600;
        text-decoration: underline; }
        .work .Eva02 p a:hover {
          text-decoration: none; }
  .work .Eva03 {
    margin: 20px auto 0 auto;
    border-top: solid 4px #3ec5c7;
    background-color: #f6f6f6;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px; }
    @media screen and (max-width: 767px) {
      .work .Eva03 {
        width: 100%; } }
    .work .Eva03 h4 {
      color: #3ec5c7;
      font-size: 18px;
      margin: 20px 0; }
    .work .Eva03 p {
      color: #333333;
      font-size: 14px;
      text-align: left;
      letter-spacing: -1px;
      line-height: 1.75;
      padding: 0 30px 30px 30px; }
      .work .Eva03 p a {
        display: inline;
        color: #ef256b;
        font-weight: 600;
        text-decoration: underline; }
        .work .Eva03 p a:hover {
          text-decoration: none; }

.silver_bt, .too_bt {
  margin-bottom: 100px; }
  @media screen and (max-width: 767px) {
    .silver_bt, .too_bt {
      margin-bottom: 70px; } }

.bronzer_bt {
  padding-bottom: 50px; }
  @media screen and (max-width: 767px) {
    .bronzer_bt {
      padding-bottom: 20px; } }

.bronzer_bt_fin {
  padding-bottom: 100px; }
  @media screen and (max-width: 767px) {
    .bronzer_bt_fin {
      padding-bottom: 70px; } }

.fin {
  padding-bottom: 130px; }
  @media screen and (max-width: 767px) {
    .fin {
      padding-bottom: 50px; } }

.comment_area {
  width: 950px;
  margin: 0 auto;
  border: 3px solid #e2c44e;
  margin-bottom: 110px; }
  @media screen and (max-width: 1000px) {
    .comment_area {
      width: 90%; } }
  @media screen and (max-width: 1000px) {
    .comment_area {
      margin-bottom: 60px; } }
  .comment_area .comme_ttl {
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 0  20px;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #ffffff; }
    @media screen and (max-width: 1000px) {
      .comment_area .comme_ttl {
        padding: 0  20px 0px 20px; } }
    .comment_area .comme_ttl::before {
      content: url("../img/work/deco_01.png");
      position: relative;
      top: 20px; }
    .comment_area .comme_ttl::after {
      content: url("../img/work/deco_02.png");
      position: relative;
      top: 20px; }
  .comment_area p {
    padding: 0 75px; }
    @media screen and (max-width: 767px) {
      .comment_area p {
        padding: 0 20px; } }

.img {
  display: none; }

/*モーダルのボタンの色を変更したい場合*/
.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before {
  background-color: #1972c6 !important; }

@media screen and (max-width: 767px) {
  .modaal-content-container {
    padding: 0 !important; } }

.works {
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  margin: 0 auto 130px;
  flex-wrap: wrap; }
  @media screen and (max-width: 767px) {
    .works {
      width: 100%; } }
  .works .come-on_box {
    display: flex;
    flex-direction: column;
    width: 45% !important; }
    .works .come-on_box .come-on_ttl {
      display: block;
      font-weight: bold;
      color: #333333; }
    @media screen and (max-width: 767px) {
      .works .come-on_box {
        width: 100% !important; } }
  .works .list_fin {
    margin: 50px auto 0; }

/*---------------footer----------------
------------------------------------------*/
#footer {
  background-color: #7d7d7d; }
  #footer .footerIn {
    width: 1030px;
    margin: auto;
    padding: 10px 0 10px 0;
    overflow: hidden; }
    @media screen and (max-width: 768px) {
      #footer .footerIn {
        width: 100%;
        padding: 20px 0; } }
    @media screen and (max-width: 1000px) {
      #footer .footerIn {
        width: 90%; } }
  #footer .copy {
    font-size: 14px;
    color: #fff;
    float: left; }
    @media screen and (max-width: 768px) {
      #footer .copy {
        font-size: 12px;
        text-align: center;
        float: none; } }
  #footer .rightBox {
    float: right; }
    @media screen and (max-width: 768px) {
      #footer .rightBox {
        float: none;
        margin-top: 20px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        text-align: center; }
        #footer .rightBox span {
          margin: 0;
          width: 50%;
          text-align: center; } }
    #footer .rightBox a {
      font-size: 14px;
      color: #fff !important; }
      @media screen and (max-width: 768px) {
        #footer .rightBox a {
          text-align: center;
          width: 50%;
          font-size: 12px; } }
