@charset "UTF-8";
@import url(reset.css);
@import url(base.css);
@import url(common.css);
/*****************/
/***** 関数 ******/
/*****************/
/***************************/
/***** トランジション ******/
/***************************/
.index .contents4 .sec1 .news_box_wrap .news_box a:hover:before, .index .contents4 .sec1 .news_box_wrap .news_box a:before, .performance .contents1 .sec1 .performance_box_wrap .performance_box a:hover .ttl, .performance .contents1 .sec1 .performance_box_wrap .performance_box a:hover img, .performance .contents1 .sec1 .performance_box_wrap .performance_box a .ttl, .performance .contents1 .sec1 .performance_box_wrap .performance_box a figure img, .index .contents4 .sec1 .btn a, .index .contents2 .sec1 .btn a, .about .contents1 .sec1 .btn a, .service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .btn a {
  -webkit-transition-duration: 0.3s;
       -o-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

/*****************/
/***** 変数 ******/
/*****************/
/*メインカラー*/
/*$main_color: #fff;
$sub_main_color: #fff;*/
/*フォントカラー*/
/*フォントファミリー*/
/*****************/
/***** 共通 ******/
/*****************/
/**横幅**/
.contact .contents1 .contact_box, .blog_detail .contents1 .sec1, .blog .contents1 .sec1, .site .contents1 div.sitemap_box, .privacy .contents1 .privacy_box, .error .contents1 .sec1, .index .contents4 .sec1, .index .contents3 .sec1, .index .contents2 .sec1, .index .contents1 .sec1, .glo_bnr_wrap .glo_bnr_box, .cont {
  width: 1080px;
  margin: 0 auto;
}

/**クリア**/
/*IE7用*/
/* Hides from IE-mac \*/
/**ボタン**/
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .btn {
  width: 100%;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .btn a {
  display: block;
  width: 100%;
  background: #3bb5ed;
  border-radius: 30px;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  padding-top: 8px;
  padding-bottom: 8px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .btn a:hover {
  background: #b3f0ff;
  text-decoration: none;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .btn a span {
  background: url(../image/common/mail_icon.png) left center no-repeat;
  padding-left: 35px;
}

/**ボタン**/
.index .contents4 .sec1 .btn, .index .contents2 .sec1 .btn, .about .contents1 .sec1 .btn {
  width: 100%;
}
.index .contents4 .sec1 .btn a, .index .contents2 .sec1 .btn a, .about .contents1 .sec1 .btn a {
  display: block;
  width: 100%;
  background: #3bb5ed;
  border-radius: 30px;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  padding-top: 8px;
  padding-bottom: 8px;
}
.index .contents4 .sec1 .btn a:hover, .index .contents2 .sec1 .btn a:hover, .about .contents1 .sec1 .btn a:hover {
  background: #b3f0ff;
  text-decoration: none;
}

.index .contents1, .company .contents1, .about .contents1 {
  position: relative;
}
.index .contents1:before, .company .contents1:before, .about .contents1:before {
  content: "";
  background: url(../image/index/bubble_rt.png) right top no-repeat;
  padding: 12%;
  position: absolute;
  background-size: contain;
  right: 0px;
  top: 0px;
}
.index .contents1:after, .company .contents1:after, .about .contents1:after {
  content: "";
  background: url(../image/index/bubble_lt.png) left top no-repeat;
  background-size: contain;
  padding: 19%;
  position: absolute;
  left: 0px;
  top: 0px;
}

/**テーブル**/
.company .contents1 .sec2 .tbl table {
  width: 100%;
}
.company .contents1 .sec2 .tbl table th, .company .contents1 .sec2 .tbl table td {
  font-weight: normal;
  padding-top: 15px;
  padding-bottom: 15px;
  font-weight: 500;
}
.company .contents1 .sec2 .tbl table th {
  width: 200px;
  text-align: right;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.company .contents1 .sec2 .tbl table td {
  padding-left: 30px;
}
.company .contents1 .sec2 .tbl table tr:nth-child(2n+1) th, .company .contents1 .sec2 .tbl table tr:nth-child(2n+1) td {
  background: #f5f5f5;
}

.face_book .fbcomments,
.face_book iframe,
.face_book .fb_iframe_widget,
.face_book .fb_iframe_widget[style],
.face_book .fb_iframe_widget iframe[style],
.face_book .fbcomments iframe[style],
.face_book .fb_iframe_widget span,
.face_book _2p3a {
  width: 100% !important;
}

.object-fit {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

.h_styles {
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 30px;
}

.glo_bnr_wrap {
  padding-top: 66px;
  padding-bottom: 67px;
}
.glo_bnr_wrap .glo_bnr_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr {
  width: 520px;
  height: 250px;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr a p {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 496px;
  background: #b3f0ff;
  bottom: 20px;
  padding: 7px 20px 7px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 5px;
  font-size: 2.4rem;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr a:hover p {
  background: #3bb5ed;
  color: #fff;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr a.business_bnr {
  background: url(../image/common/bnr_business_bg.png) center top no-repeat;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr a.setsubi_bnr {
  background: url(../image/common/bnr_setsubi_bg.png) center top no-repeat;
}
.glo_bnr_wrap .glo_bnr_box .glo_bnr a.about_bnr {
  background: url(../image/common/bnr_about_bg.png) center top no-repeat;
}

/*==================================================
制作物紹介-詳細                       
================================================== */
.performance_detail .contents1 {
  padding-top: 60px;
  padding-bottom: 35px;
  position: relative;
}
.performance_detail .contents1 .sec1 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.performance_detail .contents1 .sec1 .photo_box {
  width: 500px;
}
.performance_detail .contents1 .sec1 .photo_box .photo {
  width: 500px;
  height: 320px;
  margin-bottom: 13px;
}
.performance_detail .contents1 .sec1 .photo_box ul.thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.performance_detail .contents1 .sec1 .photo_box ul.thumb li {
  width: 160px;
  height: 105px;
  margin-right: 10px;
  margin-bottom: 10px;
}
.performance_detail .contents1 .sec1 .photo_box ul.thumb li:nth-child(3n) {
  margin-right: 0px;
}
.performance_detail .contents1 .sec1 .box {
  width: 560px;
}
.performance_detail .contents1 .sec1 .box h2 {
  font-size: 2.6rem;
  font-weight: bold;
  margin-bottom: 20px;
}

/*==================================================
制作物紹介                                   
================================================== */
.performance .contents1 {
  padding-top: 60px;
  padding-bottom: 35px;
  position: relative;
}
.performance .contents1 .sec1 {
  position: relative;
  z-index: 1;
  margin-bottom: 30px;
}
.performance .contents1 .sec1 .performance_box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box {
  width: 520px;
  margin-right: 37px;
  margin-bottom: 35px;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box a figure {
  margin-bottom: 8px;
  width: 520px;
  height: 320px;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box a figure img {
  border-radius: 8px;
  opacity: 1;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box a:hover {
  text-decoration: none;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box a:hover img {
  opacity: 0.8;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box a:hover .ttl {
  color: #3bb5ed;
}
.performance .contents1 .sec1 .performance_box_wrap .performance_box:nth-child(2n) {
  margin-right: 0px;
}

/*==================================================
設備紹介                                   
================================================== */
.facility .contents1 {
  padding-top: 60px;
  padding-bottom: 70px;
  position: relative;
}
.facility .contents1:before {
  content: "";
  height: 100%;
  right: 0px;
  top: 0px;
  width: 20%;
  position: absolute;
  background: url(../image/setsubi/setsubi_bubble_lt.png) left top repeat-y;
  background-size: contain;
}
.facility .contents1:after {
  content: "";
  height: 100%;
  left: 0px;
  top: 0px;
  width: 20%;
  position: absolute;
  background: url(../image/setsubi/setsubi_bubble_rt.png) left top repeat-y;
  background-size: contain;
}
.facility .contents1 .sec1 {
  position: relative;
  z-index: 1;
  margin-bottom: 100px;
}
.facility .contents1 .sec1 .txt_box h3 {
  text-align: center;
  font-size: 2.6rem;
  font-weight: bold;
  color: #3bb5ed;
  margin-bottom: 5px;
  line-height: 1.16;
  margin-bottom: 8px;
}
.facility .contents1 .sec1 .txt_box .txt {
  text-align: center;
}
.facility .contents1 .sec2 {
  position: relative;
  z-index: 1;
}
.facility .contents1 .sec2 .setsubi_box_wrap .setsubi_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 70px;
}
.facility .contents1 .sec2 .setsubi_box_wrap .setsubi_box:last-child {
  margin-bottom: 0px;
}
.facility .contents1 .sec2 .setsubi_box_wrap .setsubi_box figure {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  width: 500px;
  text-align: center;
  margin-right: 30px;
}
.facility .contents1 .sec2 .setsubi_box_wrap .setsubi_box .item_txt {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.facility .contents1 .sec2 .setsubi_box_wrap .setsubi_box .item_txt h3 {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 10px;
}
.facility .contents1 .sec2 .setsubi_box_wrap .setsubi_box .item_txt section h4 {
  margin-bottom: 30px;
  font-size: 2.6rem;
  color: #3bb5ed;
  font-weight: bold;
  line-height: 1.4;
}

/*==================================================
業務内容                                      
================================================== */
.service .contents1 {
  padding-top: 60px;
  padding-bottom: 20px;
}
.service .contents1 .sec1 .txt_s {
  text-align: center;
  margin-bottom: 35px;
}
.service .contents1 .sec1 .business_box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.service .contents1 .sec1 .business_box_wrap .business_box {
  width: 518px;
  border: 1px solid #3bb5ed;
  border-radius: 10px;
  margin-bottom: 30px;
}
.service .contents1 .sec1 .business_box_wrap .business_box figure {
  border-bottom: 1px solid #3bb5ed;
}
.service .contents1 .sec1 .business_box_wrap .business_box figure img {
  border-radius: 10px 10px 0px 0px;
}
.service .contents1 .sec1 .business_box_wrap .business_box .s_box {
  padding: 16px 27px 16px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.service .contents1 .sec1 .business_box_wrap .business_box .s_box .name {
  font-weight: bold;
  font-size: 3rem;
  line-height: 1.4;
  margin-bottom: 14px;
}
.service .contents1 .sec1 .business_box_wrap .business_box .s_box .name span {
  display: block;
  font-size: 1.6rem;
  color: #3bb5ed;
}
.service .contents1 .sec1 .business_box_wrap .business_box .s_box .list {
  font-weight: 900;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 2px solid #cccccc;
}
.service .contents2 {
  padding-top: 60px;
  padding-bottom: 70px;
  background: url(../image/business/c2_bg.png) center top no-repeat;
  background-size: cover;
}
.service .contents2 .sec1 {
  width: 723px;
  margin: 0 auto;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box {
  border: 1px solid #3bb5ed;
  border-radius: 10px;
  padding: 20px 35px 20px;
  border-radius: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 10px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box:last-child {
  margin-bottom: 0px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .step_icon {
  margin-right: 27px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .step_icon .step_in {
  width: 100px;
  height: 100px;
  background: #3bb5ed;
  border-radius: 50%;
  position: relative;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .step_icon .step_in dl {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .step_icon .step_in dl dd {
  color: #fff;
  font-size: 1.2rem;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .step_icon .step_in dl dd span {
  font-size: 1.6rem;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box {
  width: calc(100% - 129px);
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .ttl {
  margin-bottom: 8px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .ttl dt {
  font-size: 2.6rem;
  font-weight: bold;
  color: #3bb5ed;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con {
  background: #f5f5f5;
  border-radius: 10px;
  padding: 10px 15px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .eh_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 3px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .eh_box dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 10px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .eh_box dl dt {
  margin-right: 10px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .eh_box dl:last-child {
  margin-right: 0px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .tf {
  font-size: 2.6rem;
  color: #3bb5ed;
  font-weight: bold;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .tf a {
  color: #3bb5ed;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .tf span {
  background: url(../image/business/tel_fax.png) left center no-repeat;
  padding-left: 43px;
}
.service .contents2 .sec1 .orderflow_box_wrap .orderflow_box .box .box_con .tfc_box .btn {
  width: 205px;
}

/*==================================================
私たちについて                                      
================================================== */
.about .contents1 {
  padding-top: 60px;
  padding-bottom: 70px;
}
.about .contents1 .sec1 {
  position: relative;
  z-index: 1;
}
.about .contents1 .sec1 .box {
  text-align: center;
}
.about .contents1 .sec1 .box h3 {
  font-size: 2.6rem;
  color: #3bb5ed;
  font-weight: bold;
  margin-bottom: 25px;
}
.about .contents1 .sec1 .box .txt {
  margin-bottom: 70px;
}
.about .contents1 .sec1 .box .txt p {
  margin-bottom: 30px;
}
.about .contents1 .sec1 .box .txt p:last-child {
  margin-bottom: 0px;
}
.about .contents1 .sec1 .btn {
  width: 246px;
  margin: 0 auto;
}
.about .contents2 {
  padding-top: 60px;
  padding-bottom: 70px;
  background: #f5f5f5;
}
.about .contents2 .point_box_wrap .point_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 57px;
}
.about .contents2 .point_box_wrap .point_box:last-child {
  margin-bottom: 0px;
}
.about .contents2 .point_box_wrap .point_box figure {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.about .contents2 .point_box_wrap .point_box .box {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 560px;
}
.about .contents2 .point_box_wrap .point_box .box dl dt {
  font-size: 2.6rem;
  color: #3bb5ed;
  margin-bottom: 20px;
  font-weight: bold;
}
.about .contents2 .point_box_wrap .point_box:nth-child(2n) figure {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.about .contents2 .point_box_wrap .point_box:nth-child(2n) .box {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

/*==================================================
会社概要                                        
================================================== */
.company .contents1 {
  padding-top: 60px;
  padding-bottom: 70px;
}
.company .contents1 .sec1 {
  position: relative;
  margin-bottom: 70px;
  z-index: 1;
}
.company .contents1 .sec1 .box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 63px;
}
.company .contents1 .sec1 .box_wrap figure {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.company .contents1 .sec1 .box_wrap .box {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 560px;
}
.company .contents1 .sec1 .box_wrap .box .yaku {
  font-weight: bold;
  font-size: 1.6rem;
}
.company .contents1 .sec1 .box_wrap .box dl {
  margin-bottom: 23px;
  font-weight: bold;
}
.company .contents1 .sec1 .box_wrap .box dl dt {
  font-size: 2.6rem;
}
.company .contents1 .sec1 .box_wrap .box dl dd {
  font-size: 1.4rem;
  color: #3bb5ed;
}
.company .contents1 .sec1 .think_box {
  background: #fef7ef;
  border-radius: 8px;
  padding: 45px 40px 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 896px;
  margin: 0 auto;
}
.company .contents1 .sec1 .think_box h3 {
  text-align: center;
  margin-bottom: 40px;
  font-size: 2.6rem;
  color: #3bb5ed;
  font-weight: bold;
}
.company .contents1 .sec1 .think_box .txt_box p {
  margin-bottom: 30px;
}
.company .contents1 .sec1 .think_box .txt_box p:last-child {
  margin-bottom: 0px;
}
.company .contents1 .sec2 .tbl {
  margin-bottom: 40px;
}
.company .contents1 .sec2 .map {
  width: 100%;
  height: 400px;
}
.company .contents1 .sec2 .map iframe {
  width: 100%;
  height: 100%;
}

/*==================================================
トップページ                                           
================================================== */
.index .contents1 {
  position: relative;
  padding-top: 50px;
  padding-bottom: 100px;
  background: url(../image/index/c1_bg.png) right bottom no-repeat;
}
.index .contents1 .sec1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.index .contents1 .sec1 .map_box {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  position: relative;
  z-index: 1;
}
.index .contents1 .sec1 .box {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  position: relative;
  z-index: 1;
  padding-top: 45px;
}
.index .contents1 .sec1 .box h2 {
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 30px;
}
.index .contents1 .sec1 .box h2 span {
  display: block;
  text-align: center;
}
.index .contents1 .sec1 .box .txt_box p {
  margin-bottom: 30px;
}
.index .contents1 .sec1 .box .txt_box p:last-child {
  margin-bottom: 0px;
}
.index .contents2 {
  position: relative;
  padding-bottom: 65px;
  background: url(../image/index/c2_bg.png) center top no-repeat;
  background-size: cover;
  padding-top: 535px;
}
.index .contents2:before {
  content: "";
  background: url(../image/index/c2_theeth_bg.png) center center no-repeat;
  background-size: cover;
  width: 100%;
  height: 400px;
  position: absolute;
  left: 0px;
  top: 0px;
}
.index .contents2 .sec1 h2 {
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 30px;
}
.index .contents2 .sec1 h2 span {
  display: block;
  text-align: center;
}
.index .contents2 .sec1 .point_box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 75px;
}
.index .contents2 .sec1 .point_box_wrap .point_box {
  width: 340px;
  padding: 37px 20px 37px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 10px;
  border: 1px solid #fff;
  -webkit-box-shadow: 0px 8px 17px 0px rgba(6, 6, 6, 0.17);
          box-shadow: 0px 8px 17px 0px rgba(6, 6, 6, 0.17);
}
.index .contents2 .sec1 .point_box_wrap .point_box .num {
  position: relative;
  margin-bottom: 10px;
}
.index .contents2 .sec1 .point_box_wrap .point_box .num dt {
  width: 60px;
  position: absolute;
  left: 0px;
  bottom: 0px;
}
.index .contents2 .sec1 .point_box_wrap .point_box .num dt span {
  background: #3bb5ed;
  border-radius: 50%;
  font-size: 3.4rem;
  width: 60px;
  display: block;
  text-align: center;
  color: #fff;
  position: relative;
}
.index .contents2 .sec1 .point_box_wrap .point_box .num dt span:before {
  content: "";
  background: url(../image/common/point_bg.png) left top no-repeat;
  width: 52px;
  height: 24px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -20px;
}
.index .contents2 .sec1 .point_box_wrap .point_box .num dd {
  text-align: center;
  margin-top: 10px;
}
.index .contents2 .sec1 .point_box_wrap .point_box .txt_box {
  padding-left: 12px;
  padding-right: 12px;
}
.index .contents2 .sec1 .point_box_wrap .point_box .txt_box dl dt {
  text-align: center;
  font-size: 2.6rem;
  font-weight: bold;
  margin-bottom: 13px;
  line-height: 1.1;
}
.index .contents2 .sec1 .point_box_wrap .point_box .txt_box dl dd {
  line-height: 2;
}
.index .contents2 .sec1 .btn {
  width: 240px;
  margin: 0 auto;
}
.index .contents3 {
  padding-top: 75px;
  padding-bottom: 55px;
}
.index .contents3 .sec1 .btn_list_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list {
  width: 350px;
  min-height: 459px;
  position: relative;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list a dl {
  width: 310px;
  background: #b3f0ff;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 20px;
  padding: 7px;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list a dl dt {
  font-size: 2.4rem;
  margin-right: 10px;
  letter-spacing: 0.14rem;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list a dl dd {
  font-size: 1.6rem;
  padding-bottom: 5px;
  letter-spacing: 0.14rem;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list a:hover dl {
  background: #3bb5ed;
  color: #fff;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list:nth-child(1) a {
  display: block;
  background: url(../image/index/c3_img01_bg.png) center top no-repeat;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list:nth-child(2) a {
  display: block;
  background: url(../image/index/c3_img02_bg.png) center top no-repeat;
}
.index .contents3 .sec1 .btn_list_wrap .btn_list:nth-child(3) a {
  display: block;
  background: url(../image/index/c3_img03_bg.png) center top no-repeat;
}
.index .contents4 {
  padding-top: 55px;
  padding-bottom: 40px;
  background: url(../image/index/c4_bg.png) center top no-repeat;
  background-size: cover;
}
.index .contents4 .sec1 .h_style {
  text-align: center;
  font-size: 3rem;
  margin-bottom: 30px;
  line-height: 1;
  font-weight: bold;
}
.index .contents4 .sec1 .h_style span {
  display: block;
}
.index .contents4 .sec1 .news_box_wrap {
  margin-bottom: 30px;
}
.index .contents4 .sec1 .news_box_wrap .news_box {
  margin-bottom: 10px;
}
.index .contents4 .sec1 .news_box_wrap .news_box a {
  background: #fff;
  border-radius: 7px;
  display: block;
  padding: 17px 87px 17px 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
.index .contents4 .sec1 .news_box_wrap .news_box a:before {
  content: "";
  background: url(../image/common/arrow.png) left top no-repeat;
  width: 5px;
  height: 9px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
}
.index .contents4 .sec1 .news_box_wrap .news_box a:hover:before {
  right: 10px;
}
.index .contents4 .sec1 .news_box_wrap .news_box a dl dt {
  float: left;
  border-right: 1px solid #dad6d6;
  width: 136px;
}
.index .contents4 .sec1 .news_box_wrap .news_box a dl dd {
  margin-left: 172px;
}
.index .contents4 .sec1 .news_box_wrap .news_box a dl dd span {
  display: block;
  display: block;
  width: 200px;
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  width: 803px;
}
.index .contents4 .sec1 .btn {
  width: 240px;
  margin: 0 auto;
}

/*==================================================
エラーページ
================================================== */
.error .contents1 {
  padding-top: 80px;
  padding-bottom: 100px;
  overflow: hidden;
}
.error .contents1 .sec1 {
  zoom: 1;
  overflow: hidden;
}
.error .contents1 .sec1 a {
  text-decoration:underline;
}

.error .contents1 .sec1 a:hover {
  text-decoration:none;
}

/*==================================================
プライバシーポリシー
================================================== */
.privacy .contents1 {
  padding-top: 80px;
  padding-bottom: 30px;
}
.privacy .contents1 .privacy_box h3.item-title-h3 {
  font-size: 2rem;
  font-weight: bold;
}
.privacy .contents1 .privacy_box .item-box {
  line-height: 1.8;
  margin-bottom: 30px;
}
.privacy .contents1 .privacy_box .item-box:last-child {
  margin-bottom: 80px;
}

/*==================================================
 サイトマップ
================================================== */
.site .contents1 {
  padding-top: 80px;
  padding-bottom: 100px;
}
.site .contents1 .sitemap-list li {
  padding: 0 0 0 0px;
  line-height: 40px;
  border-bottom: 1px dotted #ccc;
}
.site .contents1 .sitemap-list li a {
  color: #000 !important;
  position: relative;
  padding-left: 15px;
}
.site .contents1 .sitemap-list li a:before {
  content: "";
  position: absolute;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0px;
  width: 4px;
  height: 4px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}

/*==================================================
 ブログ
================================================== */
.blog .contents1 {
  padding-top: 80px;
  padding-bottom: 100px;
  overflow: hidden;
}
.blog .contents1 .sec1 .item-box {
  background: #fff;

  -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
  padding: 20px;
  margin-bottom: 20px;
  border: 3px solid #3bb5ed;
}
.blog .contents1 .sec1 .item-box dl {
  overflow: hidden;
  zoom: 1;
}
.blog .contents1 .sec1 .item-box dl dt {
  float: left;
}
.blog .contents1 .sec1 .item-box dl dd {
  margin-left: 110px;
}
.blog .contents1 .sec1 .item-box dl dd a {
  /*color: #000 !important;*/
}

/*==================================================
 ブログ詳細
================================================== */
.blog_detail .contents1 {
  padding-top: 80px;
  padding-bottom: 100px;
  overflow: hidden;
}
.blog_detail .contents1 .sec1 h3 {
  font-size: 2.2rem;
  border-bottom: 2px solid #3bb5ed;
  margin-bottom: 20px;
}
.blog_detail .contents1 .sec1 img {
  max-width: 1040px;
}

.blog_detail .contents1 .sec1 .item-box {
  background: #fff;
  border: 3px solid #3bb5ed;
  -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
  padding: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  zoom: 1;
}

/*==================================================
 お問い合わせ
================================================== */
.contact .contents1 {
  padding-top: 80px;
  padding-bottom: 60px;
}
.contact .contents1 .contact_box table {
  border-top: 1px solid #000;
  width: 100%;
}
.contact .contents1 .contact_box table th {
  background: #b3f0ff;
  width: 320px;
}
.contact .contents1 .contact_box table td {
  width: 780px;
}
.contact .contents1 .contact_box table th, .contact .contents1 .contact_box table td {
  border-bottom: 1px solid #000;
  padding: 20px;
  word-wrap: break-word;
}
.contact .contents1 .contact_box .reg {
  margin-bottom: 20px;
}
.contact .contents1 .contact_box form input {
  font-size: 1.6rem;
}
.contact .contents1 .contact_box form textarea {
  width: 100%;
  height: 180px;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", Verdana, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
}
.contact .contents1 .contact_box form .clrred {
  color: #c00;
}
.contact .contents1 .contact_box .contact-recaptcha-wrap,
.contact .contents1 .contact_box .contact-submits-wrap {
  text-align: center;
  margin: 10px auto 10px;
  width: 304px;
}
.contact .contents1 .contact_box .contact-recaptcha-wrap input {
  text-align: center;
}

/* input設定
-------------------------------------------------- */
.input-big,
.input-mid,
.input-min {
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.input-big {
  width: 100%;
}

.input-mid {
  width: 60%;
}

.input-min {
  width: 60px;
}

.mt5 {
  margin-top: 5px;
}

/* 必須マーク
-------------------------------------------------- */
.required-mark {
  padding: 1px 3px;
  color: #fff;
  font-size: 12px;
  font-weight: normal;
  border-radius: 5px;
  background: #f00;
  float: right;
  margin-top: 5px;
}

/* 未記入エラー文
-------------------------------------------------- */
.error-text {
  margin: 0 0 5px;
  color: #f00;
}

/* 確認、バック、送信ボタン
-------------------------------------------------- */
.contact-submits {
  padding: 15px 0 0;
  text-align: center;
}

.contact-submits input {
  margin: 0 5px;
  padding: 5px;
}

/* セキュリティエラー
-------------------------------------------------- */
.sec-error-text {
  line-height: 50px;
  text-align: center;
  color: #f00;
  font-size: 16px;
  border: 2px solid #f00;
}