@charset "utf-8";
/* CSS Document */
html{ overflow-x: hidden;
 overflow-y: scroll; -webkit-overflow-scrolling: touch;}

body {
  color: #1C1C1C;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'MS PGothic', 'MS UI Gothic', Helvetica, Arial, sans-serif;
  line-height: 1.75;
  background: #ffffff;
  background-size: cover;
  font-size: 18px;
	
}
h1 {
  font-size: 270%;
  /*font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
}
h2 {
  font-size: 230%;
  line-height: 1.6em;
  /*font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
}
h3 {
  font-size: 150%;
}
h4 {
  font-size: 125%;
	padding-bottom:1rem;
	border-bottom: 1px solid #A7A7A7;
}
h5 {
  font-size: 100%;
}
h2 span {}
@media screen and (max-width: 1000px) {
  h1 {
    font-size: 200%
  }
  h2 {
    font-size: 200%
  }
  h3 {
    font-size: 150%
  }
  h4 {
    font-size: 125%
  }
  h5 {
    font-size: 100%
  }
}
@media screen and (max-width: 700px) {
  h1 {
   font-size: 190%;
  }
  h2 {
    font-size: 160%;
  }
  h3 {
    font-size: 120%
  }
  h4 {
    font-size: 100%
  }
  h5 {
    font-size: 100%
  }
}
@media screen and (max-width: 400px) {
  h1 {
   font-size: 180%;
    padding: 0 0.3em;
  }
}

ul.list_a01, ul.list_b01 {
  background: #fff;
  padding: 1em 0;
}
ul.list_a01 li, ul.list_b01 li {
  background: #fff;
  background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/check01.jpg);
  background-repeat: no-repeat;
  background-size: 2em;
  padding: .5em 0 .5em 3.2em;
  margin: 0;
  background-position: top .3em left .5em;
  font-size: 1em;
  border-bottom: dotted 2px #d8c9ba;
}
ul.list_b01 li {
  background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/moya.png);
}
@media screen and (min-width: 700px) {
  .pc_none, .pcnone {
    display: none;
  }
}
@media screen and (max-width: 700px) {
  .sp_none, .spnone {
    display: none;
  }
}
/*=========================================================================

　　　　↓ヘッダー↓

===========================================================================*/
header {
  width: 100%;
  text-align: center;
  background: url(../img/back2.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}
.header_in {
  position: relative;
  margin: 0 auto;
  max-width: 1000px;
}
.bg_light_blue {
  background-color: #ECFBFC;
  z-index: -100;
}
/*
.header_bar {
    background: #fff;
    position: fixed;
    overflow: hidden;
    z-index: 999;
    width: 100%;
    padding: 0.8em 1.1em;
    box-sizing: border-box;
}

.header_bar_in {
    position: relative;
    margin: 0 auto;
    max-width: 1200px;
    /*display: flex;
    justify-content: space-between;*/
/*   align-content: center;
    flex-direction: row;
    align-items: center;
}
*/
.logo {
  float: left;
  max-width: 45%;
  margin-bottom: 20px;
}
.head_btn {
  max-width: 38%;
  float: right;
}
.gif_back {
  position: relative;
  max-width: 1200px;
  background: url(../../start/img/head_back.gif);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin: 0 auto 0;
  padding: 35px 3% 0%;
}
.head_text {
  padding-bottom: 0;
  margin-top: -3%;
  padding-bottom: 40%;
}
.head_cv {
  display: block;
  position: relative;
  max-width: 701px;
  margin: 0 auto;
}
.ya {
  width: 13%;
  position: absolute;
  top: 47%;
  right: 6%;
}
/*.news {
    text-align: center;
    background: rgba(255, 251, 74, 0.82);
    border-bottom: solid 1px #b2b2b2;
    padding: 0.5em;
    font-size: 120%;
    position: fixed;
    z-index: 999;
    width: 100%;
    box-shadow: 0px 2px 7px #aaa;
    margin-top: -2.1em;
}*/
.news {
  text-align: center;
  /* padding: 0.5em;*/
  font-size: 140%;
  z-index: 999;
  width: 100%;
  color: #fff !important;
}
@media screen and (max-width: 700px) {
  /* 表示領域が700px以下の場合に適用するスタイル */
  /* .news {
        font-size: 90%;
        margin-top: -2.8em;
    }*/
  .header_in {
    background-color: #f8f5f0;
  }
}
@media screen and (max-width: 435px) {
  /* 表示領域が700px以下の場合に適用するスタイル */
  /* .news {
        font-size: 90%;
        margin-top: -2.8em;
    }*/
  .header_in {
    /* padding-top: 40%;*/
  }
}
/*=========================================================================

　　　　↓背景色↓

===========================================================================*/
.blue_bg2 {
  width: 100%;
  background: #0B407D;
  /* background: url("../img/form_bg.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: initial;
/*height: 500px;*/
}
.tokuten_bg {
  width: 100%;
  text-align: center;
  background: url("../img/tk_bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  padding: 4em 0 0;
}
/*=========================================================================

　　　　↓全体レイアウト↓

===========================================================================*/
#contents {
  max-width: 100%;
  margin: 0 auto;
  background-color: #fff;
}
.contents {
  max-width: 1000px;
  margin: 0 auto;
  /*background-color: #fff;*/
}
@media screen and (max-width: 435px) {
  /* 表示領域が435px以下の場合に適用するスタイル */
  #contents {
    background-color: #fff;
  }
}
p {
  white-space: pre-line;
}
.text {
  margin: 0 0%;
}
@media screen and (max-width: 1200px) {
  /* 表示領域が435px以下の場合に適用するスタイル */
  .text {
    margin: 0 3%;
  }
}
.ttl {
  width: 100%;
  margin: 6rem 0 4rem;
  background-repeat: repeat-x;
  background-size: contain;
}
.ttl_in {
  margin: 0 auto;
  position: relative;
  line-height: 1.6;
  padding: 0 0.5em;
  padding: 5% 2% 4%;
}
.ttl_text {
  max-width: 1200px;
  color: #383635;
  text-align: center;
  box-sizing: border-box;
  font-weight: bold;
  margin: 0 auto;
}
@media screen and (max-width: 700px) {
  /* 表示領域が320px以下の場合に適用するスタイル */
  .ttl_text {
    width: 100%;
    text-align: center;
  }
  .ttl {
    width: 100%;
    margin: 2.5em 0 2em;
    background-repeat: repeat-x;
    background-size: contain;
  }
}
.sec_in {
  max-width: 1400px;
  margin: 0 auto;
}
.sec_in2 {
  max-width: 1000px;
  margin: 0 auto;
}
/*=========================================================================

　　　　↓ブレット↓

===========================================================================*/
.bullet {
  padding: 0;
}
.bullet ul {
  background: #fff;
  padding: 1em 0;
}
.bullet ul li {
  background: #fff;
  background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/check01.jpg);
  background-repeat: no-repeat;
  background-size: 2em;
  padding: .5em 0 .5em 2.8em;
  margin: 0;
  background-position: top .3em left .5em;
  font-size: 1em;
  border-bottom: dotted 2px #d8c9ba;
}
.bullet .fuan li {
  background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/moya.png);
}
.bullet ul li:first-child {
  padding: .5em 0 .5em 2.8em;
}
.bullet ul li:last-child {
  padding: .5em 0 .5em 2.8em;
}
.naiyou {
  width: 100%;
  border: solid 1px #E8E8E8;
  border-radius: 5px;
  background: #fff;
  position: relative;
  margin: 0 0 13px 0;
  box-sizing: border-box;
  overflow: hidden;
  padding: 30px;
}
.naiyou_img {
  border-radius: 0 5px 5px 0;
  float: left;
  overflow: hidden;
  width: 26%;
  margin-left: 1%;
}
.musimegane_img {
  position: absolute;
  bottom: 0;
  right: 2em;
}
@media screen and (max-width: 600px) {
  .musimegane_img {
    position: absolute;
    bottom: 0;
    right: -1em;
  }
}
.clum_end dl dd img {
  position: static;
  float: right;
}
.naiyou dt {
  padding: 0 0 0.2em 0;
  border-bottom: solid 1px #ff2222;
  font-weight: bold;
  margin: -9px 0 0.5em 0;
}
.naiyou dl {
  width: 100%;
  float: left;
}
.naiyou dd p {
  padding: 1em 0 0em 0;
  line-height: 30px;
}
.naiyou_nam {
  background: #ff2222;
  color: #fff;
  display: block;
  float: left;
  margin: 0.2em 1em 0 0;
  padding: 0em 0.5em;
  height: 100%;
}
.naiyou.clum_end {
  width: 912px;
  display: block;
  box-sizing: border-box;
  height: 20em;
}
.tokuten {
  width: 100%;
  border: solid 1px #E8E8E8;
  border-radius: 5px;
  background: #fff;
  position: relative;
  margin: 0 0 13px 0;
  box-sizing: border-box;
  overflow: hidden;
  padding: 30px;
}
.tokuten_img {
  border-radius: 0 5px 5px 0;
  float: left;
  overflow: hidden;
  width: 26%;
  margin-left: 1%;
}
.tokuten dt {
  padding: 0 0 0.2em 0;
  border-bottom: solid 1px #FF5A00;
  font-weight: bold;
  margin: -9px 0 0.5em 0;
}
.tokuten dl {
  width: 73%;
  float: left;
}
.tokuten dd p {
  padding: 1em 0 0em 0;
  line-height: 30px;
}
.tokuten_nam {
  background: #ff5a00;
  color: #fff;
  display: block;
  float: left;
  margin: 0.2em 1em 0 0;
  padding: 0em 0.5em;
  height: 100%;
}
.tokuten.clum_end {
  width: 912px;
  display: block;
  box-sizing: border-box;
  height: 20em;
}
/*=========================================================================

　　　　↓お客様の声↓

===========================================================================*/
.voice {
  background: #e6e2df;
  padding: 0;
  margin: 0 6%;
}
.voice p {
  background-color: #fff;
  background-image: linear-gradient(90deg, transparent 2em, transparent 2.01em), linear-gradient(#eaeaea .1em, transparent .1em);
  background-size: 100% 1.8em;
  padding: 1.8em 1em;
  margin: 0 2% 1em;
  border: solid 1px gray;
  line-height: 1.8em;
}
/*=========================================================================

　　　　↓手紙風↓

===========================================================================*/
/*

.letter {
    background:
        url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/letter01.png) center top no-repeat,
        url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/letter03.png) center bottom no-repeat,
        url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/letter02.png) center top repeat-y;
    background-size: contain;
}

.letter p {
    position: relative;
    background-image: linear-gradient(rgba(248, 202, 144, 0.5) 1px, transparent 1px);
    background-size: 100% 1.75em;
    line-height: 1.75em;
    margin: 3em;
}



@media screen and (max-width: 435px) {
    .letter p .right_pic {
        padding: 0 0 0.75em 0 !important;
        width: auto !important;
        height: 10em !important;
    }
}*/
.letter p {
  position: relative;
  background-image: linear-gradient(rgba(248, 202, 144, 0.30) 0.01em, transparent 0.1em);
  background-size: 100% 1.75em;
  line-height: 1.75em;
  margin: 2.5em 0 1em;
}


/*=========================================================================

　　　　↓テーブル↓

===========================================================================*/
table {
  border: solid 1px #DADADA;
}
caption {
  background: #3e3e3e;
  color: #fff;
  padding: .5em;
  border-radius: 5px 5px 0 0;
}
table tr {
  border-bottom: solid 1px #ddd;
}
table th {
  border-right: solid 1px #ddd;
  font-weight: 400;
  background: #3E3E3E;
  padding: 1em 1em;
  color: #fff;
  width: 23%;
}
table td {
  padding: 0.5em;
  /* text-align: right; */
  border: solid 1px #797979;
}
@media screen and (max-width: 435px) {
  /* 表示領域が435px以下の場合に適用するスタイル */
  table:not(.table_ichiran), table:not(.table_ichiran) tr, table:not(.table_ichiran) th, table:not(.table_ichiran) td, table:not(.table_ichiran) tbody, caption {
    width: 100%;
    display: block;
    box-sizing: border-box;
  }
  table th {
    padding: .5em;
    border: 0;
  }
}
/*=========================================================================

　　　　↓画像系↓

===========================================================================*/
.right_pic {
  padding: 0 0 1em 1em;
  float: right;
}
.left_pic {
  padding: 0 1em 1em 0;
  float: left;
}
.right_pic2 {
  padding: 0 0 1em 1em;
  float: right;
  position: absolute;
  right: 2em;
  width: 40%;
}
@media screen and (max-width: 600px) {
  /* 表示領域が600px以下の場合に適用するスタイル */
  .right_pic, .right_pic2 {
    padding: 0 0 1em;
    float: none;
    width: 90%;
    display: block;
    margin: 0 auto;
    position: relative;
    right: initial;
  }
  .left_pic {
    padding: 0 1em 1em 0;
    float: left;
    width: 50%;
  }
}
@media screen and (max-width: 435px) {
  /* 表示領域が435px以下の場合に適用するスタイル */
  .right_pic {
    padding: 0 0 1em;
    float: none;
    width: 90%;
    display: block;
    margin: 0 auto;
  }
  .left_pic {
    padding: 0 0 1em;
    float: none;
    width: 60%;
  }
}
.sankaku {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1em 2em 0;
  border-color: #d60000 transparent transparent;
  display: block;
  text-align: center;
  margin: 0 auto -1em;
}
.movie {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-top: 56.25%;
  border: solid 4px #bebebe;
  box-sizing: border-box;
}
.movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*=========================================================================

　　　　↓フォーム↓

===========================================================================*/
input {
  padding: 7px 8px;
  font-size: 100%;
  margin: 8px 0 6px;
  border-radius: 5px;
  border: solid 1px #A2A2A2;
}
input[type="image"] {
  border: none;
  max-width: 100%;
}
/*input[type="submit"] {
    background-color: #5DC11A;
    box-shadow: 1px 2px 0 #149421;
    text-shadow: 0 -1px #149421;
    position: relative;
    padding: .5em 1em;
    border-radius: 5px;
    color: #FFF;
    font-weight: 700;
    text-decoration: none;
    border: solid 1px;
}*/
input[type="submit"]:hover {
  top: 3px;
  box-shadow: none;
  color: #fff;
}
label:hover {
  background: #FFEFB7;
  cursor: pointer;
  border-radius: 6px;
}
/*=========================================================================

　　　　↓レイアウト↓

===========================================================================*/
.space-between {
  display: flex;
  justify-content: space-between;
}
.space-around {
  display: flex;
  justify-content: space-around;
}
@media screen and (max-width: 700px) {
  .space-between {
    display: block;
  }
  .space-around {
    display: block;
    width: 83%;
    margin: 0 auto;
  }
}
/*=========================================================================

　　　　↓決済↓

===========================================================================*/
.order {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 3px 3px 10px 3px #8c8c8c;
}
.order h3 {
  background: #1f1f1f;
  text-align: center;
  padding: .5em 0;
  color: #fff;
}
.bar {
  background: #feffc6;
  display: block;
  padding: .5em 0;
  border: double 3px #dcb90f;
}
/*=========================================================================

　　　　↓ボタン↓

===========================================================================*/
.submit {
  background-color: #E88E00;
  box-shadow: 0 6px 7px #d1d1d1;
  /* text-shadow: 0 -1px #c96600; */
  position: relative;
  padding: 0.8em 1em;
  border-radius: 100px;
  font-weight: 700;
  font-size: 2rem;
  text-decoration: none;
  color: #fff !important;
  display: inline-block;
  /* margin: 1em 0 0.5em; */
  text-align: center;
  box-sizing: border-box;
  /* border: 1px solid #ff8100; */
  width: 70%;
	    overflow: hidden;
    transition: 300ms;
}


.submit:hover {
  top: 6px;
  box-shadow: none;
  color: #fff;
}



.submit._shiny {
    background-color: #E88E00;
    box-shadow: 0 6px 7px #d1d1d1;
    /*text-shadow: 0 -1px #500303;*/
    position: relative;
    padding: 0.7em 1.2em;
    border-radius: 55px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    margin: 0.5em 1em 0;
    text-align: center;
    box-sizing: border-box;
	overflow: hidden;
	transition: 300ms;
	font-size: 2rem;
}
.submit._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.submit._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

@media screen and (max-width: 435px) {
.submit._shiny {
	margin: 0.5em 0em 0.3em;
    width: 100%;
    line-height: 1.4;
    padding: 1em 0.5em;
    border-radius: 55px;
    font-size: 120%;	
}
	
.submit._shiny:hover {
    border-radius: 55px;
}
}


.submit02 {
  /*background-color: #3a841c;*/
  background-color: #054084;
  box-shadow: 0 6px 7px #d1d1d1;
  /* text-shadow: 0 -1px #c96600; */
  position: relative;
  padding: 0.8em 1em;
  border-radius: 100px;
  font-weight: 700;
  font-size: 2rem;
  text-decoration: none;
  color: #fff !important;
  display: inline-block;
  /* margin: 1em 0 0.5em; */
  text-align: center;
  box-sizing: border-box;
  /* border: 1px solid #ff8100; */
  width: 70%;
	    overflow: hidden;
    transition: 300ms;
}


.submit02:hover {
  top: 6px;
  box-shadow: none;
  color: #fff;
}



.submit02._shiny {
    /*background-color: #3a841c;*/
	background-color: #1B65A1;
    box-shadow: 0 6px 7px #d1d1d1;
    /*text-shadow: 0 -1px #500303;*/
    position: relative;
    padding: 0.7em 1.2em;
    border-radius: 55px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    margin: 0.5em 1em 0;
    text-align: center;
    box-sizing: border-box;
	overflow: hidden;
	transition: 300ms;
	font-size: 2rem;
}
.submit02._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.submit02._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}

@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

@media screen and (max-width: 435px) {
.submit02._shiny {
	margin: 0.5em 0em 0.3em;
    width: 100%;
    line-height: 1.4;
    padding: 1em 0.5em;
    border-radius: 55px;
    font-size: 120%;	
}
	
.submit02._shiny:hover {
    border-radius: 55px;
}
}






.submit03 {
  background-color: #f676e6;
  box-shadow: 0 6px 0 #c96600;
  text-shadow: 0 -1px #c96600;
  position: relative;
  padding: 0.8em 1em;
  /*border-radius: 30px;*/
  font-weight: 700;
  font-size: 35px;
  text-decoration: none;
  color: #fff !important;
  display: inline-block;
  margin: 1em 0 0.5em;
  text-align: center;
  box-sizing: border-box;
  border: 1px solid #ff8100;
  width: 40%;
}
.submit03:hover {
  top: 6px;
  box-shadow: none;
  color: #fff;
}
@media screen and (max-width: 435px) {
.submit{
    background-color: #ff8100;
    box-shadow: 0 6px 0 #c96600;
    text-shadow: 0 -1px #c96600;
    position: relative;
    padding: 1em 0.5em;
    font-weight: 700;
    text-decoration: none;
    color: #fff !important;
    display: inline-block;
    margin: 0 0 0.5em;
    text-align: center;
    box-sizing: border-box;
    border: 1px solid #ff8100;
    width: 100%;
    font-size: 130%;
}

.submit02{
    /*background-color: #3a841c;*/
	background-color: #1B65A1;
    box-shadow: 0 6px 0 #5D5C5C;
    text-shadow: 0 -1px #5D5C5C;
    position: relative;
    padding: 1em 0.5em;
    font-weight: 700;
    text-decoration: none;
    color: #fff !important;
    display: inline-block;
    margin: 0 0 0.5em;
    text-align: center;
    box-sizing: border-box;
    /*border: 1px solid #1B65A1;*/
    width: 100%;
    font-size: 130%;

  }
}

.imgbtn {
  display: block;
  margin: 30px auto;
}
.head_btn01 {
  display: block;
  right: 0;
  color: #000;
  font-size: 32px;
  background: #208F02;
  padding: 1.5em 0;
}

/*=========================================================================

　　　　↓フッター↓

===========================================================================*/
footer {
  width: 100%;
  padding: 0 1em 10px;
  font-size: 80%;
  color: #fff;
  /*margin-top: 3em;*/
  box-sizing: border-box;
  background: #606060;
}
.footer_in {
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 1em;
}
footer a {
  color: #fff !important;
}
footer a:hover {
  color: #EF27F4;
}
.page_top a {
  position: fixed;
  bottom: 10px;
  right: 10px;
  display: block;
  text-align: center;
  text-decoration: none;
 background: rgb(233,145,5 ,0.8);
  color: #fff;
  padding: .5em;
  line-height: 1.4;
  width: 3.5em;
  height: 3.5em;
  z-index: 999;
}
.page_top a:hover {
  background: rgba(121, 121, 121, 0.7);
}
@media screen and (max-width: 435px) {
  /* 陦ｨ遉ｺ鬆伜沺縺�320px莉･荳九�蝣ｴ蜷医↓驕ｩ逕ｨ縺吶ｋ繧ｹ繧ｿ繧､繝ｫ */
  .footer_in p img {
    max-width: 50px;
  }
}
/*=========================================================================

　　　　↓リンク↓

===========================================================================*/
a img {
  -webkit-transition: .2s ease-in-out;
  -moz-transition: .2s ease-in-out;
  -o-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
}
a img:hover {
  opacity: .7;
  filter: alpha(opacity=70);
}

.elem_wrap {
  margin-bottom: 5%;
  margin-right: auto;
  margin-left: auto;
  max-width: 1200px;
}
/*==============================================

　　　　↓sec01↓

================================================*/
.sec01 {
  width: 100%;
 /* background: #F5F4EC;*/
	padding-top:2em;
   background: url("../img/jiai_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
	padding-bottom:1rem;
	  position: relative;
	overflow-x: hidden;
 /* 方眼紙模様に必須のスタイル */
  /* background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f8f5f5 calc(100% - 1px)),
                    linear-gradient(90deg, transparent calc(100% - 1px), #f8f5f5 calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;

  /* 以下任意のスタイル */
}
.sec01 .elem_wrap {
  position: relative;
	  max-width: 1000px!important;
	
}
.sec01 .elem01 {

  margin: 0 auto;
}
.sec01 .elem01 .item01 {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
  justify-content: space-around;
}
.sec01 .elem01 .item01 img {
  max-width: 49%;
  margin-bottom: 1%;
}
.sec01 .item01 {
  position: relative;
}

.sec_ttl{text-shadow: 6px 6px 8px #f3f2ea, -6px 6px 8px #f3f2ea, 6px -6px 8px #f3f2ea, -6px -8px 8px #f3f2ea;
position: relative;
z-index: 10;}

.okumura_img1{position: absolute;
    max-width: 50%;
    top: -7%;
    right: -13%;}


.white_box {
  background: rgb(255, 255, 255, 0.85);
  padding: 1em;
  max-width: 850px;
  box-shadow: 0 0 10px #c7c7c7;
}
@media screen and (max-width: 1000px) {}
@media screen and (max-width: 760px) {
  .sec01 {
    padding-bottom: 2rem;
  }
}

@media screen and (max-width: 500px) {
.okumura_img1 {
position: absolute;
    max-width: 70%;
        top: -10%;
    right: -11%;
    overflow: hidden;
}
	
	.sec_ttl{text-shadow: 2px 2px 3px #f3f2ea, -2px 2px 3px #f3f2ea, 2px -2px 3px #f3f2ea, -2px -3px 3px #f3f2ea;}
}


/*==============================================

　　　　↓sec02↓

================================================*/
.sec02 {
  background: #F2F6F9;
  padding-bottom: 3%;
}
.sec02 .elem_wrap {
  position: relative;
  max-width: 100%;
  /*background: rgb(242,253,254);
background: linear-gradient(270deg, rgba(242,253,254,1) 0%, rgba(240,252,253,1) 0%, rgba(254,255,255,1) 100%);
	/*
    background: rgb(244, 244, 244);
    background: linear-gradient(90deg, rgba(244, 244, 244, 1) 0%, rgba(244, 244, 244, 1) 70%, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, 1) 100%);*/
  margin: 0;
  z-index: 10;
}
.sec02 .elem_wrap:nth-child(2) {
  position: relative;
  max-width: 100%;
  /* background: rgb(244, 244, 244);
background: linear-gradient(90deg, rgba(242,253,254,1) 0%, rgba(240,252,253,1) 0%, rgba(254,255,255,1) 100%);*/
  z-index: 10;
}
.sec02 .elem01 {
  max-width: 1200px;
  margin: 0 auto 1%;
  display: flex;
  align-content: flex-start;
  flex-direction: row;
  justify-content: space-around;
  align-items: flex-end;
  padding-top: 1%;
}
.sec02 .elem01.elem02 {
  display: flex;
  align-content: flex-start;
  flex-direction: row-reverse;
  justify-content: space-around;
  align-items: flex-end;
}
.sec02 .elem01 .item01 {
  font-size: 110%;
  width: 51%;
  overflow: hidden;
  padding: 3%;
  margin-right: 2%;
  /* background: #fff; */
  margin-left: 2%;
}
.sec02 .elem01 .item01 .item01 {
  background: #7282b1;
  width: 5em;
  text-align: center;
  color: #fff;
  font-weight: bold;
  line-height: 1.2;
  margin-top: -8.9%;
  margin-bottom: 1%;
  box-shadow: none;
}
.img-shadow {
  box-shadow: 8px 8px 15px rgb(10 32 52 / 20%);
}
.bg_number {
  position: absolute;
  z-index: -1;
  top: 50%;
}
.sec02 .elem01 .item01 .item01 .s01 {
  font-size: 240%;
}
.sec02 .elem01 .item01 .item01 .s02 {
  font-weight: normal;
  font-size: 93%;
}
.sec02 .elem01 .item01 .item02 {
  font-size: 38px;
  font-weight: bold;
  margin-bottom: 1%;
  width: 100%;
}
.sec02 .elem01 .item02 {
  width: 50%;
}
.sec02 .elem01 .item03 {}
.sec02 .elem02 {}
.sec02 .elem02 .item01 {}
.sec02 .elem02 .item02 {}
.sec02 .elem02 .item03 {}
.sec02 .elem03 {}
.sec02 .elem03 .item01 {}
.sec02 .elem03 .item02 {}
.sec02 .elem03 .item03 {}
.ttl_css {
  background: #fff;
  border-left: 5px solid #1a3a61;
  padding: .5em 1em .5em;
  display: inline-block;
  width: 90%;
  margin: 1em 1em 1.5em 0;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
@media screen and (max-width: 1200px) {
  .sec02 .elem01 {
    /* background: rgb(244, 244, 244);
        background: linear-gradient(270deg, rgba(242,253,254,1) 0%, rgba(240,252,253,1) 0%, rgba(254,255,255,1) 100%);*/
    padding-top: 3%;
    padding-left: 3%;
    padding-right: 3%;
  }
}
@media screen and (max-width: 1000px) {
  .sec02 .elem01, .sec02 .elem01.elem02 {
    display: flex;
    flex-direction: column-reverse;
  }
  .sec02 .elem01 .item01 {
    max-width: 100%;
    width: 100%;
    padding: 5%;
    margin-top: 3%;
    /* border-radius: 0.7em;*/
    display: block;
    margin-left: 0;
  }
  .sec02 .elem01 .item02 {
    max-width: 100%;
    width: 100%;
  }
  .sec02 .elem01 .item01 .item01 {
    font-size: 60%;
    margin-top: -7%;
  }
  .sec02 .elem01 .item01 .item02 {
    font-size: 30px;
  }
}
@media screen and (max-width: 700px) {
  .sec02 .elem01 .item01 .item02 {
    font-size: 7vw;
  }
  .ttl_css {
    width: 100%;
  }
  .sec02 .elem01 .item01 .item01 {
    width: 6em;
    margin-bottom: 1em;
  }
}
/*==============================================

　　　　↓sec03↓

================================================*/
.sec03 {
	
	 width: 100%;
 /* background: #F5F4EC;*/
	padding-top:2em;
   background: url("../img/profile_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
	padding-bottom:1rem;
}
.sec03 .elem_wrap {
  max-width: 1200px;
}
.sec03 .elem01 {}
.sec03 .elem01 .item01 {}
.sec03 .elem01 .item02 {}
.sec03 .elem01 .item03 {}
.sec03 .elem02 {
  /* background: #fff;*/
  padding: 1.5em 0;
}
.sec03 .elem02 .item01 {}
.sec03 .elem02 .item02 {}
.sec03 .elem02 .item03 {}
.sec03 .elem03 {}
.sec03 .elem03 .item01 {}
.sec03 .elem03 .item02 {}
.sec03 .elem03 .item03 {}
@media screen and (max-width: 1000px) {}
@media screen and (max-width: 760px) {
  .sec03 {
    padding: 0;
  }
}
/*==============================================

　　　　↓sec04↓

================================================*/
.sec04 {
  background-color: #F2F6F9;
  padding: 4rem 0 2rem;
}
.sec04 .elem_wrap {
  max-width: 1000px;
}
.sec04 .elem01 {
  max-width: 1100px;
  margin: 0 auto;
}
.sec04 .elem01 .item01 {}
.sec04 .elem01 .item02 {}
.sec04 .elem01 .item03 {}
.sec04 .elem02 {}
.sec04 .elem02 .item01 {}
.sec04 .elem02 .item02 {}
.sec04 .elem02 .item03 {}
.sec04 .elem03 {}
.sec04 .elem03 .item01 {}
.sec04 .elem03 .item02 {}
.sec04 .elem03 .item03 {}
@media screen and (max-width: 1000px) {}
@media screen and (max-width: 760px) {}
/*==============================================

　　　　↓sec05↓

================================================*/
.sec05 {
  background: #EDF4FA;
}
a.cv2 {
  position: relative;
  display: inline-block;
}
a.cv2 .ya {
  top: 48%;
}
.sec05 .elem_wrap {}
.sec05 .elem01 {}
.sec05 .elem01 .item01 {}
.sec05 .elem01 .item02 {}
.sec05 .elem01 .item03 {}
.sec05 .elem02 {}
.sec05 .elem02 .item01 {}
.sec05 .elem02 .item02 {}
.sec05 .elem02 .item03 {}
.sec05 .elem03 {}
.sec05 .elem03 .item01 {}
.sec05 .elem03 .item02 {}
.sec05 .elem03 .item03 {}
@media screen and (max-width: 1000px) {}
@media screen and (max-width: 760px) {}
/*==============================================

　　　　↓sec06↓

================================================*/
.sec06 {}
.sec06 .elem_wrap {
  max-width: 1200px;
  margin: 0 auto;
}
.sec06 .elem01 {
  border-radius: 1em;
  border: 3px solid #40BDC3;
  /*box-shadow: 2px 2px 6px #aaa;*/
  width: 100%;
  overflow: hidden;
  padding: 3%;
  background: #fff;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3%;
}
.sec06 .elem01 .item01 {
  width: 60%;
}
.sec06 .elem01 .item01 .item01 {
  background: #52c6cb;
  width: 6em;
  text-align: center;
  color: #fff;
  font-weight: bold;
  border-radius: 0em 0em 1em 1em;
  padding: 5% 2% 2.3%;
  line-height: 1.2;
  margin-top: -5.8%;
  margin-bottom: 1%;
  box-shadow: none;
  display: inline-block;
  margin-right: 0.8em;
}
.sec06 .elem01 .item01 .item01 .s01 {
  font-size: 240%;
}
.sec06 .elem01 .item01 .item01 .s02 {
  font-weight: normal;
  font-size: 93%;
}
.sec06 .elem01 .item01 .item02 {
  font-size: 38px;
  font-weight: bold;
  margin-bottom: 1%;
  display: inline-block;
  vertical-align: top;
}
.sec06 .elem01 .item01 .item03 {
  margin-top: 1em;
}
.sec06 .elem01 img.item02 {
  width: 35%;
}
@media screen and (max-width: 1000px) {}
@media screen and (max-width: 760px) {
  .sec06 .elem01 {
    padding: 0 5% 5%;
    background: #fff;
    display: flex;
    /*flex-direction: column-reverse;*/
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-start;
  }
  .sec06 .elem01 .item01 {
    width: 100%;
    /*margin-left: 8%;*/
  }
 /*.sec06 .elem01 img.item02 {width: 115%;margin-top: -54%;margin-left: 0%;max-width: 200%;}*/
  sec06 .elem01 img.item02 {
    width: 80%;
    /* margin-top: -54%; */
    /* margin-left: 0%; */
    max-width: 200%;
    margin: 0 auto;
  }
  .sec06 .elem01 .item01 .item01 {
    background: #52c6cb;
    width: 6em;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 0em 0em 1em 1em;
    padding: 5% 2% 2.3%;
    line-height: 1.2;
    margin-top: -1.8%;
    margin-bottom: 1%;
    box-shadow: none;
    display: inline-block;
    margin-right: 0.8em;
  }
  .sec06 .elem01 .item01 .item02 {
    font-size: 8vw;
  }
  .sec06 .elem01 img.item02 {
    width: 50%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 435px) {
  .sec06 .elem01 img.item02 {
    width: 70%;
    margin: 0 auto;
  }
}
/*==============================================

　　　　↓sec07↓

================================================*/
.sec07 {
  width: 100%;
  text-align: center;
  /*background: url("../img/kakaku_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;*/
}
.sec07 h2 {
  /*color: #fff600;
	padding-top: 5%;*/
}
.sec07 .elem_wrap {}
.sec07 .elem01 {
  max-width: 1000px;
  margin: 0 auto 3%;
  background: #fff;
  border-radius: 2em;
  position: relative;
}
.sec07 .elem01 .item01 {
  position: absolute;
  top: -5%;
  left: 2%;
}
.sec07 .elem01 .item02 {
  max-width: 860px;
  margin: 0 auto;
  text-align: center;
  padding: 3%;
  font-size: 280%;
  font-weight: bold;
}
.sec07 .elem01 .item02 img {
  margin-top: 3%;
}
.sec07 .elem01 .item03 {
  max-width: 860px;
  margin: 0 auto;
  padding: 0% 3% 4%;
}

.ifl_ttl{font-size: 300%;
    line-height: 1.5em;}

@media screen and (max-width: 1000px) {
  .sec07 .elem01 {}
  .sec07 .elem01 .item01 {
    width: 16%;
    top: -5%;
    left: -2%;
  }
  .sec07 .elem01 .item02 {
    font-size: 6.1vw;
  }
  .sec07 .elem01 .item03 {
    padding: 0% 5% 4%;
  }
}

@media screen and (max-width: 760px) {
  .sec07 .elem01 {
    margin-top: 1em;
    border-radius: 1em;
  }
  .sec07 .elem01 .item01 {
    width: 19%;
    top: -1.4em;
    left: -2%;
  }
  .sec07 .elem01 .item02 {
    padding-top: 7%;
  }
  .sec07 .elem01 .item03 {}
}
@media screen and (max-width: 500px) {
  .sec07 {
    width: 100%;
    text-align: center;
    /*background: url("../img/kakaku_bg_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;*/
  }
	
	
.ifl_ttl{font-size: 165%;
    line-height: 1.5em;}
}
/*==============================================

　　　　↓sec08↓

================================================*/
.sec08 {
  background: #0B407D;
  padding-top: 5%;
	 /*   padding-bottom: 10%;*/
}
.sec08 .elem_wrap {
  max-width: 1000px;
}
.sec08 .elem01 {
  text-align: center;
}
.sec08 .elem01 .item01 {
  text-align: center;
  font-size: 142%;
}
.sec08 .elem01 .item02 {
  text-align: center;
  font-size: 250%;
  font-weight: bold;
  color: #df562f;
  margin-bottom: 2%;
}
.sec08 .elem01 .item03 {}
.sec08 .elem02 {
  background: #fff;
  border: solid 2px #18244a;
  border-radius: 1.4em;
}
.sec08 .elem02 .item01 {
  background: #18244a;
  padding: 3% 4%;
  position: relative;
  text-align: center;
  border-radius: 1em 1em 0 0;
}
.sec08 .elem02 .item01 .ima {
  position: absolute;
  top: -2.3em;
  left: 3.6%;
  max-width: 16%;
}
.sec08 .elem02 .item01 .ima2 {}
.sec08 .elem02 .item02 {
  text-align: center;
  color: #df562f;
  margin: 1.8% 5% 0;
}
.sec08 .elem02 .item03 {
  margin: 0.8% 5% 3%;
}
.sec08 .elem03 {}
.sec08 .elem03 .item01 {}
.sec08 .elem03 .item02 {}
.sec08 .elem03 .item03 {}
@media screen and (max-width: 1000px) {
  .sec08 .elem01 .item01 {
    text-align: center;
    font-size: 3.8vw;
  }
	

	
	
  .sec08 .elem01 .item02 {
    font-size: 5.7vw;
    margin-bottom: 7%;
  }
}
@media screen and (max-width: 760px) {
  .sec08 .elem02 .item01 .ima {
    position: absolute;
    top: -30%;
    left: 2%;
    max-width: 16%;
  }
}

@media screen and (max-width: 760px) {

}
.content_wrapper{position: relative;
    padding-bottom: 15%;}

.content_box {
  position: relative;
  margin: 0 auto 2em;
  /*overflow: hidden;*/
  max-width: 850px;
  padding: 3%;
  background: #fff;
  z-index: 10;
	height: auto;
}
@media screen and (max-width: 760px) {
.content_box {
position: relative;
    margin: 0 0.6em 2em;
    /* overflow: hidden; */
    width: 93%;
    padding: 8% 2%;
    background: #fff;
    z-index: 10;
    height: auto;
}}


.circle {
    color: #736c6c;
    background-color: #fff;
    width: 200px;
    height: 158px;
    border-radius: 60%;
    text-align: center;
    align-content: center;
    position: absolute;
     top: 0px; 
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
color: #AFA858;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size:150%;
	line-height: 1.5em;
    /* z-index: 10;*/
}
.content_top_bg {
    position: absolute;
    z-index: 1;
    margin: 0 auto;
   /*top: 25%;*/
    width: 100%;
    max-width: 900px;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.content_ttl{z-index: 10;
position: relative;}

.content_icon{      width: 37%;
    position: absolute;
    top: 0;
    right: -2.1rem;}
.content_icon2{display:none;}
@media screen and (max-width: 760px) {
	.content_top_bg {top: -2%;}	
	.content_icon{display: none; }
	.content_icon2{display: inherit; position:relative;top: 4em;
		left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
		
	}
}
/*==============================================

　　　　↓voice↓

================================================*/
	.voice_sec {background: repeating-linear-gradient(90deg, #F3ECD4, #F3ECD4 20px, #f5efd9 20px, #f5efd9 40px);}


	.vision_sec {  width: 100%;
  text-align: center;
  background: url(../img/vision_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;}

/*==============================================

　　　　↓追加↓

================================================*/
span.q {
  color: #52c6cb;
  padding-right: 0.4em;
}
span.a {
  color: #ed562b;
  padding-right: 0.4em;
}
/*------------------------------------------------------------
.btnArea
------------------------------------------------------------*/
.btnArea {
  max-width: 100%;
  margin: 30px auto 0;
  position: relative;
}
.btnArea input[type="submit"] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 0;
  background: rgba(255, 255, 255, 0);
  padding: 0;
  z-index: -1;
  transition-duration: 0.3s;
  box-sizing: border-box;
  -webkit-appearance: none;
}
.btnArea input[type="submit"] {
  cursor: default;
  z-index: +1;
  outline: none;
}
.btnArea._check input[type="submit"] {
  z-index: -1;
}
a.btn_one {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #969696;
  border-radius: 55px;
  box-sizing: border-box;
  box-shadow: 0px 0px 0px 0px #00407b;
  /* width: 100%; */
  height: 95px;
  padding: 0 10%;
  color: #ffffff;
  font-size: 21px;
  font-weight: bold;
  text-align: left;
  text-decoration: none;
  position: relative;
  transition-duration: 0.2s;
  line-height: 1.4;
  margin: 1rem;
}

a.btn_one:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 12px;
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
  top: 50%;
  right: 8%;
  margin-top: -11px;
}
._check a.btn_one._a {
  background: #51a901;
  box-shadow: 0px 5px 0px 0px #326900;
}
a.btn_one._a:hover {
  background: #69c318;
  ;
  opacity: 1;
}
._check a.btn_one._b {
  background: #459d3c;
  box-shadow: 0px 5px 0px 0px #255720;
}
a.btn_one._b:hover {
  background: #63b559;
  opacity: 1;
}
@media screen and (max-width: 1024px) {
  a.btn_one {
    height: 75px;
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  a.btn_one {
    font-size: 1.5rem;
  }
}
/*********************************************************************/
.flex-container {
margin: 0 auto;
    max-width: 1000px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-content: flex-start;
    align-content: flex-start;
    justify-content: space-evenly;
    align-items: flex-start;
}
 .flex-item:nth-child(1),.flex-item:nth-child(2),.flex-item:nth-child(3),.flex-item:nth-child(4),.flex-item:nth-child(5),.flex-item:nth-child(6)  {
  display: inline-block;
	 position: relative;
  font-size: 100%;
  line-height: 2.9rem;
  padding: 1rem 1.5em;
  width: 400px;
  height: auto;
  margin: 1em;
  background: #fff;
  -webkit-align-self: auto;
  align-self: auto;
  color: #2d2d2d;
}

@media screen and (max-width: 600px) {
  .flex-item:nth-child(1), .flex-item:nth-child(2), .flex-item:nth-child(3), .flex-item:nth-child(4),.flex-item:nth-child(5), .flex-item:nth-child(6) {
    margin: 0.5em auto 1em;
    width: 92%;
  }
}


/*********************************************************************/



.flex-container2 {
 /* margin: 0 auto;
  max-width: 1300px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-content: flex-start;
  align-content: flex-start;*/
	margin: 0px auto;
    max-width: 1300px;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
}

.flex-item2:nth-child(1),.flex-item2:nth-child(2),.flex-item2:nth-child(3) {
  display: inline-block;
  font-size: 100%;
  line-height: 2.9rem;
	position: relative;
 padding:1rem;
  /*width: 300px;*/
	width: 310px;
  height: auto;
  margin: 0.5em;
  background: #fff;
  -webkit-align-self: auto;
  align-self: auto;
 /* box-shadow: 0px 0px 8px #606f92;*/
  color: #2d2d2d;
}
@media screen and (max-width: 1050px) {.flex-item2:nth-child(1),.flex-item2:nth-child(2),.flex-item2:nth-child(3) {width: 450px;
	margin-bottom:2em;}}
@media screen and (max-width: 995px) {
	.flex-container2 {
    margin: 0px auto;
    max-width: 1300px;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: center;
}
	.flex-item2:nth-child(1),.flex-item2:nth-child(2),.flex-item2:nth-child(3) {width: 450px;}
}


@media screen and (max-width: 800px) {.flex-item2:nth-child(1),.flex-item2:nth-child(2),.flex-item2:nth-child(3) { width: 100%;
  height: auto;
 	margin-bottom:2em;}}

@media screen and (max-width: 435px) {.flex-item2:nth-child(1),.flex-item2:nth-child(2),.flex-item2:nth-child(3) { width: 100%;
    height: auto;
    margin: 0.5em 0.5em 2em;}}



.case{position: absolute;
color: #AFA858;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-weight: 700;
    font-size: 150%;
    top: -1.5rem;}

/*********************************************************************/
.radius_box2 {
  position: relative;
  margin: 2em auto;
  border-radius: 1em;
  overflow: hidden;
  width: 100%;
  padding: 3%;
  background: #fff;
  z-index: 1;
  font-weight: 700;
  border: solid 3px #40BDC3;
  box-shadow: 2px 2px 6px #b5d2d6;
}

.box-line {
  border: 2px solid #b59b33;
  padding: 1em;
}
@media screen and (max-width: 1000px) {

}
@media screen and (max-width: 600px) {

}
@media screen and (max-width: 435px) {

}
.flex_wrap {
  display: flex;
  justify-content: space-between;
}


@media screen and (max-width: 500px) {

}

@media screen and (max-width: 600px) {
  .flex_wrap {
    display: block;
  }
  .box29, .box30, .box31 {
    width: 95%;
    margin: 2em auto;
  }
}


.block {
  display: block;
}

/*----------------------------------------------------

▼　よくある質問

----------------------------------------------------*/
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.cp_qa .cp_actab {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 0 1em 0;
  color: #1b2538;
}
.cp_qa .cp_actab input {
  position: absolute;
  opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {color: #fff;
    font-weight: bold;
    line-height: 1.6em;
    position: relative;
    display: block;
    margin: 0 10%;
    padding: 0.7em 3em 0.7em 2.5em;
    cursor: pointer;
    text-indent: 1em;
    /* border-radius: 0.5em; */
    background: #0B407D;
    text-align: left;
    font-size: 120%;
}
.cp_qa .cp_actab label::before {
  /*font-family: serif;*/
  font-size: 1.5em;
  margin-left: -2em;
  padding-right: 0.5em;
  content: 'Q';
  color: #D2DDE8;
}
.cp_qa .cp_actab label:hover {
  transition: all 0.3s;
  color: #6ec5c2;
}
/* --質問の＋アイコン */
.cp_qa .cp_actab label::after {
  font-size: 1.7em;
  font-weight: bold;
  line-height: 2em;
  position: absolute;
  top: 0;
  right: 0;
  content: '＋';
  display: inline-block;
  width: 2em;
  height: 2em;
  -webkit-transition: transform 0.4s;
  transition: transform 0.4s;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
  position: relative;
  overflow: hidden;
  max-height: 0;
  padding: 0 0 0 2.5em;
  -webkit-transition: max-height 0.2s;
  transition: max-height 0.2s;
  border-radius: 0 0 0.5em 0.5em;
  margin: 0 10%;
}
.cp_qa .cp_actab .cp_actab-content::before {
  /*font-family: serif;*/
  font-size: 1.5em;
  position: absolute;
  margin: 0.4em 0 0 -1.2em;
  padding: 0;
  color: #AFA858;
  content: 'A';
}
.cp_qa .cp_actab .cp_actab-content p {
  margin: 1em 1em 1em 0;
  line-height: 2em;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
  max-height: 40em;
  /*border: 10px solid #fff;*/
  background: #fff;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab input:checked ~ label {
  color: #c4dfff;
  border-radius: 0.5em 0.5em 0 0;
}
/* 質問をクリックした時の+の動き */
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
}
p {
  display: inline-block;
  /* text-align: left;*/
}
@media screen and (max-width: 600px) {
  .cp_qa .cp_actab label {
    margin: 0 5%;
  }
  .cp_qa .cp_actab .cp_actab-content {
    margin: 0 5%;
  }
}
/*=========================================================================

ボタン

===========================================================================*/
.button {
  width: 100%;
  max-width: 1000px;
}
.button__box {
  text-decoration: none;
  background: linear-gradient(to bottom, #ffd94d 0, #ffd94d 50%, #ffc900 50%, #ffc900 100%);
  /*font-size: 3.4vw;*/
  font-size: 1.8em;
  letter-spacing: -.01em;
  font-weight: 700;
  color: #102a74 !important;
  display: block;
  text-align: center;
  /* box-sizing: border-box; */
  box-shadow: 0 0.93333vw 0 0 #b7871b;
  padding: 1.5vw 4vw;
  border: 2px solid #fff;
  border-radius: 10px;
  position: relative;
  width: 50%;
  max-width: 600px;
  margin: 1em auto 2.66667vw;
  z-index: 10;
}
.button__box2 {
  text-decoration: none;
  background: linear-gradient(to bottom, #da7f72 0, #f89c8f 50%, #ec7969 50%, #ee7b6a 100%);
  /* font-size: 3.4vw; */
  font-size: 1.8em;
  letter-spacing: -.01em;
  font-weight: 700;
  color: #ffffff;
  display: inline-block;
  text-align: center;
  /* box-sizing: border-box; */
  box-shadow: 0 0.93333vw 0 0 #963426;
  padding: 1vw 3vw;
  border: 2px solid #ae3a29;
  border-radius: 10px;
  position: relative;
  width: 40%;
  /* max-width: 600px;*/
  margin: .3em .3em 2.66667vw;
  z-index: 10;
  text-shadow: 2px 2px 4px #963426;
}
.button__box3 {
  text-decoration: none;
  background: linear-gradient(to bottom, #ff8100 0, #f49636 50%, #ff8100 50%, #c56f16 100%);
  /* font-size: 3.4vw; */
  font-size: 1.8em;
  letter-spacing: -.01em;
  font-weight: 700;
  color: #ffffff;
  display: inline-block;
  text-align: center;
  /* box-sizing: border-box; */
  box-shadow: 0 0.93333vw 0 0 #714110;
  padding: 1vw 3vw;
  border: 2px solid #e8841f;
  border-radius: 10px;
  position: relative;
  width: 40%;
  /* max-width: 600px; */
  margin: 0.3em 0.3em 2.66667vw;
  z-index: 10;
  text-shadow: 2px 2px 3px #714110;
}
.button__box:hover {
  box-shadow: none;
  top: 8px;
  transform: translate3d(0, 8px, 0);
  transition-duration: 0.3s;
}
.button__box2:hover {
  box-shadow: none;
  top: 8px;
  transform: translate3d(0, 8px, 0);
  transition-duration: 0.3s;
}
.button__box3:hover {
  box-shadow: none;
  top: 8px;
  transform: translate3d(0, 8px, 0);
  transition-duration: 0.3s;
}
.button__box::after {
  background: url(../img/icon_arrow.png) no-repeat center center;
  background-size: 100% auto;
  content: '';
  display: block;
  width: 7.5vw;
  height: 7.5vw;
  position: absolute;
  top: 45%;
  right: 6vw;
  transform: translateY(-50%);
}
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  /*width: 100%!important;*/
}
@media screen and (max-width: 600px) {
  .button__box {
    font-size: 1.3em !important;
    width: 80%;
    padding: 1rem;
  }
  .button__box2 {
    font-size: 1.2em !important;
    font-size: 1em !important;
    width: 80%;
    padding: 1rem;
    font-weight: 900;
  }
  .button__box3 {
    font-size: 1em !important;
    width: 80%;
    padding: 1rem;
    font-weight: 900;
  }
}
.flex_wrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 600px) {
  .flex_wrap {
    display: block;
  }
}

/*=========================================================================

.box_contents

===========================================================================*/
.box_contents {
  box-shadow: 0 0 10px #aaa;
  display: block;
  background: #fff;
	padding: 0.2em;
  max-width: 600px;
	width: auto;
  position: relative;
  margin: 1em auto 1em;
	float: right;
}

.box_contents_line{  padding: 1em;
	border:solid 1px #AFA858;
margin:5px;}

.box_contents2 {
  box-shadow: 0 0 10px #0a0a21;
  display: block;
  background: #fff;
  padding: 1.5em 2em 2em;
  max-width: 900px;
  position: relative;
  margin: 1em auto 0;
}


@media screen and (max-width: 600px) {

  .box_contents {
    box-shadow: 0 0 10px #aaa;
    display: block;
    background: #fff;
    padding: 0.3em !important;
    width: 100%;
    position: relative;
     margin: -1em auto 2em;
  }
  .box_contents2 {
    box-shadow: 0 0 10px #0a0a21;
    display: block;
    background: #fff;
    padding: 1.2em !important;
    max-width: 900px;
    position: relative;
    margin: 1em auto 0;
  }
}

.ribbon11 {
display: inline-block;
    position: absolute;
    box-sizing: border-box;
    padding: 0 3em 0 1em;
    margin: 0 0 0 -20px;
    width: calc(100% + 20px);
    font-size: 22px;
    color: white;
    left: 0;
    top: -0.5em;
    width: auto;
    background: #b8ab6f;
}
.ribbon11:before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px #7c7240;
}

@media screen and (max-width: 500px) {.ribbon11 {
    display: inline-block;
    position: absolute;
    box-sizing: border-box;
    padding: 0 1.5em 0 1em;
    margin: 0 0 0 -20px;
    width: calc(100% + 20px);
    font-size: 20px;
    color: white;
    left: 0;
    top: -0.5em;
    width: auto;
    background: #b8ab6f;
}}

/*=========================================================================


===========================================================================*/





.form_in {
  padding: 1.5em 0;
}
.submit_icon::after {
  background: url(../img/click.png) no-repeat center center;
  background-size: 100% auto;
  content: '';
  display: block;
  width: 10%;
  height: 100%;
  position: absolute;
  top: 77%;
  right: 4%;
  transform: translateY(-50%);
}
.submit_icon:hover {
  /*box-sizing: border-box;*/
  box-shadow: none;
  /*transform: translate3d(0, 8px, 0);*/
  /*transition-duration: 0.3s;*/
  opacity: 0.7;
}
@media screen and (max-width: 600px) {
  .submit_icon::after {
    background: url(../img/click.png) no-repeat center center;
    background-size: 100% auto;
    content: '';
    display: block;
    width: 20%;
    height: 100%;
    position: absolute;
    top: 90%;
    right: 0;
    transform: translateY(-50%);
  }
  .submit_icon:hover {
    /*box-sizing: border-box;*/
    box-shadow: none;
    /*transform: translate3d(0, 8px, 0);*/
    /*transition-duration: 0.3s;*/
    opacity: 0.7;
  }
}
/*************************************新価格*************************/
.bg_img5 { /* padding: 2em 0; */
  width: 100%;
  background: url("../img/bg_img5.png");
  background-position: center;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  /*padding:3em 0;*/
}
/********************フェードイン*************************************************/
.fade {
  transition: all 1000ms;
  opacity: 0;
  visibility: hidden;
  transform: translate(0px, 50px);
}
.fadein {
  opacity: 1;
  visibility: visible;
  transform: translate(0px, 0px);
}
@media screen and (max-width: 600px) {
.fade {
  transition: unset;
  opacity: 0;
  visibility: hidden;
  transform: translate(0px, 50px);
}
  .fadein {
    opacity: 1;
    visibility: visible;
    transform: translate(0px, 0px);
  }
}
/*------------------------------------------------------------
リボン
------------------------------------------------------------*/
.ribbon2 {
  display: inline-block;
  position: relative;
  height: 60px;
  line-height: 60px;
  text-align: center;
  padding: 0 2em;
  font-size: ; /*フォントサイズ*/
  background: #AFA858; /*背景色*/
  color: #FFF; /*文字色*/
  box-sizing: border-box;
  z-index: 5;
	top: 0.5em;
}
@media screen and (max-width: 435px) {
  .ribbon2 {
    font-size: 110%;
  }
}
.ribbon2 h3 {
  margin: 0;
  padding: 0 30px;
  line-height: 46px;
  z-index: 10;
}
.ribbon2:before, .ribbon2:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}
.ribbon2:before {
  /*左端の山形*/
  top: 0;
  left: -1px;
  border-width: 30px 0px 30px 15px;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
}
.ribbon2:after {
  /*右端の山形*/
  top: 0;
  right: -1px;
  border-width: 30px 15px 30px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.radius_box {
  position: relative;
  margin: 0 auto;
  top: -10px;
  overflow: hidden;
  width: 80%;
  padding: 3%;
  background: #fff;
  border: 6px double #AFA858;
}

@media screen and (max-width: 1000px) {
  .radius_box {
    position: relative;
    margin: 0 auto;
   
    top: -10px;
    overflow: hidden;
    width: 90%;
    padding: 3%;
    background: #fff;
    z-index: 1;
  }
}
@media screen and (max-width: 600px) {
  .radius_box {
    position: relative;
    margin: 0 auto;
    top: -10px;
    overflow: hidden;
    width: 90%;
    padding: 3%;
    background: #fff;
    z-index: 1;

    width: 90%;
    
  }

}
@media screen and (max-width: 435px) {
  .radius_box {
    position: relative;
    margin: 0 auto;
    top: -10px;
    overflow: hidden;
    width: 90%;
    padding: 3%;
    background: #fff;
    z-index: 1;
    width: 90%;
   
  }
}

.clear{clear:both;}


.ratio-1_1:before {
    content: "";
    display: block;
    padding-top: 10%;
}
.inner {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
}


/********ロボペイ用CSS****************/

#btn-submit-custom {
    background-color: transparent;
     box-shadow: none; 
     text-shadow: none; 
    position: absolute;
     padding: none; 
    border-radius: 0px; 
    color: #FFF; 
    font-weight: none; 
    text-decoration: none;
    border: none;
    top: 0;
    left: 0;
    right: 0;
	bottom: 0;

}
