@charset "utf-8";

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

body {
    min-width: 375px;
}

.break {
    display: block;
}

/* =====key===== */
.key {
    position: relative;
    width: 100%;
    height: 405px;
    margin: 80px 0 0;
    background: url(../img/daichoucamera01_1.jpg) top 40% center/cover no-repeat;
}

.key:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 405px;
    background: url(../img/icamera_bg01.png) left top/contain no-repeat;
    background-size: 50%;
}

.key:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 405px;
    background: url(../img/icamera_bg02.png) right bottom/contain no-repeat;
    background-size: 50%;
}

.key_text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 30px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: center;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
}

.key_text .small {
    font-size: 25px;
}

/* =====sec01===== */
.sec01 {
    padding: 50px 20px;
    box-sizing: border-box;
}

.sec01_list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 0 50px;
}

.sec01_list .item {
    width: 45%;
    height: 98px;
    box-sizing: border-box;
    box-shadow: 4px 5px 0 rgba(111, 158, 212, 0.36);
    margin: 0 8px 30px;
}

.sec01_list .item a {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background: #1f296e url(../img/icamera_arrow01.png) center bottom 5px no-repeat;
    font-size: 16px;
    font-weight: bold;
    font-family: "ヒラギノ明朝 ProN";
    color: #fff;
    letter-spacing: 0.18em;
    text-align: center;
}

.sec01_list .item:nth-of-type(1) a {
    padding: 10px 0 0;
}

.sec01_list .item:nth-of-type(2) a  {
    padding: 25px 0 0;
}

.sec01_list .item:nth-of-type(3) a {
    padding: 35px 0 0;
}

.sec01_list .item:nth-of-type(4) a {
    padding: 25px 0 0;
}

.sec01_text {
    font-size: 16px;
    font-family: "小塚ゴシック Pr6N";
    font-weight: bold;
    line-height: 2.5;
    text-align: center;
}

.sec01_text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 40%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* =====sec02===== */
.sec02 {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
}

.sec02_inner {
    width: 100%;
    border-top: 20px solid rgba(111, 158, 212, 0.36);
    border-right: 20px solid rgba(111, 158, 212, 0.36);
    border-left: 20px solid rgba(111, 158, 212, 0.36);
    padding: 30px 20px;
    box-sizing: border-box;
    margin: 0 auto;
}

.sec02_head {
    position: relative;
}

.sec02_head:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    display: inline-block;
    width: 1px;
    height: 50px;
    background: #1f296e;
}

.sec02_head:after {
    content: "";
    position: absolute;
    top: 0;
    left: -10px;
    display: inline-block;
    width: 50px;
    height: 1px;
    background: #1f296e;
}

.sec02_title {
    position: relative;
    padding: 10px 0;
    margin: 0 0 50px;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.06em;
    text-align: center;
}

.sec02_title:before {
    content: "";
    position: absolute;
    bottom: -10px;
    right: 0;
    display: inline-block;
    width: 1px;
    height: 50px;
    background: #1f296e;
}

.sec02_title:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -10px;
    display: inline-block;
    width: 50px;
    height: 1px;
    background: #1f296e;
}

.sec02 .cont_title {
    width: 90%;
    padding: 0 0 20px;
    border-bottom: 1px solid #1f296e;
    margin: 0 auto 35px;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.06em;
    text-align: center;
}

.sec02 .cont_title .br {
    display: block;
    padding: 0 0 0 1em;
}

.sec02 .cont_title .color {
    font-weight: bold;
    color: #1f296e;
}

.sec02 .cont_title .large {
    font-size: 22px;
    font-weight: bold;
    color: #1f296e;
}

/* cont01 */
.sec02 .cont01 {
    margin: 0 0 70px;
}

.sec02 .cont01 .box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 80%;
    margin: 0 auto;
}

.sec02 .cont01 .box_list:nth-of-type(1),
.sec02 .cont01 .box_list:nth-of-type(2) {
    margin: 0;
}

.sec02 .cont01 .box_list:nth-of-type(1) {
    margin: 0 10px 0 0;
}

.sec02 .cont01 .box_list .item {
    position: relative;
    padding: 0 0 0 25px;
    font-size: 16px;
    font-family: "小塚ゴシック Pr6N", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Helvetica, Arial, Sans-Serif;
    line-height: 2;
}

.sec02 .cont01 .box_list .item:before {
    content: "■";
    position: absolute;
    top: 0;
    left: 0;
    color: #1f296e;
}

/* cont02 */
.sec02 .cont02 {
    margin: 0 0 70px;
}

.sec02 .cont02 .list {
    width: 80%;
    margin: 0 auto 35px;
}

.sec02 .cont02 .list .item {
    position: relative;
    padding: 0 0 0 25px;
    font-size: 16px;
    font-family: "小塚ゴシック Pr6N", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Helvetica, Arial, Sans-Serif;
    line-height: 2;
}

.sec02 .cont02 .list .item:before {
    content: "■";
    position: absolute;
    top: 0;
    left: 0;
    color: #1f296e;
}

.sec02 .cont02 .subtitle {
    margin: 0 0 5px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

.sec02 .cont02 .sub_list {
    display: block;
    justify-content: space-between;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    margin: 0 auto;
    background: rgba(111, 158, 212, 0.36);
}

.sec02 .cont02 .sub_list .item {
    position: relative;
    width: 80%;
    padding: 0 0 0 25px;
    margin: 0 auto;
    font-size: 16px;
    font-family: "小塚ゴシック Pr6N", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Helvetica, Arial, Sans-Serif;
    line-height: 2;
}

.sec02 .cont02 .sub_list .item:before {
    content: "■";
    position: absolute;
    top: 0;
    left: 0;
    color: #1f296e;
}

/* cont03 */
.sec02 .cont03 {
    margin: 0 0 70px;
}

.sec02 .cont03 .box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 80%;
    margin: 0 auto;
}

.sec02 .cont03 .list .item {
    position: relative;
    padding: 0 0 0 25px;
    font-size: 16px;
    font-family: "小塚ゴシック Pr6N", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Helvetica, Arial, Sans-Serif;
    line-height: 2;
}

.sec02 .cont03 .list .item:before {
    content: "■";
    position: absolute;
    top: 0;
    left: 0;
    color: #1f296e;
}

.sec02 .cont03 .list .item:nth-of-type(1) {
    margin: 0 30px 0 0;
}

/* cont04 */
.sec02 .cont04 .list {
    width: 80%;
    margin: 0 auto;
}

.sec02 .cont04 .list .item {
    position: relative;
    padding: 0 0 0 25px;
    font-size: 16px;
    font-family: "小塚ゴシック Pr6N", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Helvetica, Arial, Sans-Serif;
    line-height: 2;
}

.sec02 .cont04 .list .item:before {
    content: "■";
    position: absolute;
    top: 0;
    left: 0;
    color: #1f296e;
}

/* =====sec03===== */
.sec03 {
    width: 100%;
    padding: 60px 20px;
    box-sizing: border-box;
    background: rgba(81, 118, 159, 0.15);
}

.sec03_title {
    margin: 0 0 50px;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.06em;
    text-align: center;
}

.sec03_inner {
    width: 100%;
    margin: 0 auto;
}

.sec03 .cont01 {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    margin: 0 0 60px;
}

.sec03 .cont01 .item {
    width: 410px;
}

.sec03 .cont01 .item:nth-child(-n+2) {
    margin: 0 0 75px;
}

.sec03 .cont01 .item:nth-child(-n+3) {
    margin: 0 0 75px;
}

.sec03 .cont01 .item_text {
    position: relative;
    width: 100%;
    padding: 5px 0;
    border-bottom: 1px solid #1f296e;
    margin: 0 0 44px;
    background: #fff;
    font-size: 17px;
    font-weight: bold;
    text-align: center;
}

.sec03 .cont01 .item_text .large {
    font-size: 20px;
    font-weight: bold;
}

.sec03 .cont01 .item_text.text01 .color,
.sec03 .cont01 .item_text.text03 .color {
    font-size: 20px;
    font-weight: bold;
    color: #1f296e;
}

.sec03 .cont01 .item_text.text02 .color,
.sec03 .cont01 .item_text.text04 .color {
    font-size: 20px;
    font-weight: bold;
    color: #e75087;
}

.sec03 .cont01 .item_text:before {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    border-top: 18px solid #1f296e;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
}

.sec03 .cont01 .item_text:after {
    content: "";
    position: absolute;
    bottom: -17px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    border-top: 18px solid #fff;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
}

.sec03 .cont01 .item_image {
    text-align: center;
}

.sec03 .cont01 .item_image .cap {
    width: 220px;
    padding: 10px 0 0;
    margin: 0 0 0 auto;
    text-align: left;
}

.sec03 .cont02 .text {
    position: relative;
    width: 100%;
    padding: 15px 0;
    border-bottom: 1px solid #1f296e;
    margin: 0 0 50px;
    background: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 2;
}

.sec03 .cont02 .text .large {
    font-size: 20px;
    font-weight: bold;
}

.sec03 .cont02 .text .color {
    font-size: 20px;
    font-weight: bold;
    color: #1f296e;
}

.sec03 .cont02 .text:before {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    border-top: 18px solid #1f296e;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
}

.sec03 .cont02 .text:after {
    content: "";
    position: absolute;
    bottom: -17px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    border-top: 18px solid #fff;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
}

.sec03 .cont02 .text02 {
    position: relative;
    margin: 0 0 35px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.06em;
    line-height: 2;
}

.sec03 .cont02 .text02 .large {
    font-size: 20px;
    font-weight: bold;
}

.sec03 .cont02 .text02 .color {
    font-size: 20px;
    font-weight: bold;
    color: #1f296e;
}

.sec03 .cont02 .image {
    margin: 0 0 60px;
    text-align: center;
}

.sec03 .cont02 .text03 {
    background: url(../img/line_nami.png) center bottom/100% no-repeat;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.06em;
    padding: 0 0 15px;
    line-height: 2;
}

.sec03 .cont02 .text03 .color {
    font-size: 20px;
    font-weight: bold;
    color: #be9e3a;
    text-align: center;
    line-height: 2;
}

/* =====sec04===== */
.sec04 {
    width: 100%;
    padding: 160px 20px 30px;
    box-sizing: border-box;
    background: #fffeee url(../img/logo03.png) center top 50px/100px no-repeat;    
}

.sec04_head {
    margin: 0 0 50px;
}

.sec04_title {
    position: relative;
    padding: 0 0 15px;
    margin: 0 0 25px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.3em;
}

.sec04_title:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 272px;
    height: 1px;
    background: #be9e3a;
}

.sec04_text {
    font-size: 18px;
    font-weight: bold;
    color: #1f296e;
    text-align: center;
    letter-spacing: 0.3em;
}

.sec04_text .large {
    font-size: 22px;
    font-weight: bold;
}

.sec04_text .color {
    font-size: 28px;
    font-weight: bold;
    color: #be9e3a;
    letter-spacing: 0.15em;
}

.sec04_text .big {
    font-size: 40px;
    font-weight: bold;
}

.sec04_body {
    width: 100%;
    margin: 0 auto;
}

.sec04 .cont01,
.sec04 .cont02,
.sec04 .cont03,
.sec04 .cont04,
.sec04 .cont05,
.sec04 .cont06,
.sec04 .cont07,
.sec04 .cont08,
.sec04 .cont10 {
    padding: 120px 20px 60px;
    margin: 0 0 25px;
}

.sec04 .cont09 {
    margin: 0;
}

.sec04 .cont_title {
    margin: 0 0 30px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
}

.sec04 .cont_title .color {
    font-weight: bold;
    color: #be9e3a;
}

.sec04 .cont_title .small {
    font-size: 20px;
    font-weight: bold;
}

/* cont01 */
.sec04 .cont01 {
    background: #fff url(../img/icamera_num01.png) center top 45px no-repeat;
}

.sec04 .cont01 .box {
    display: block;
    justify-content: center;
}

.sec04 .cont01 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont01 .box .image img {
    width: 100%;
}

.sec04 .cont01 .box .text {
    line-height: 2.3;
}

.sec04 .cont01 .box .text .large {
    font-size: 20px;
}

.sec04 .cont01 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* cont02 */
.sec04 .cont02 {
    background: #fff url(../img/icamera_num02.png) center top 45px no-repeat;
}

.sec04 .cont02 .box {
    display: block;
    justify-content: center;
    flex-direction: row-reverse;
}

.sec04 .cont02 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont02 .box .image img {
    width: 100%;
}

.sec04 .cont02 .box .text {
    margin: 0;
    line-height: 2.3;
}

.sec04 .cont02 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* cont03 */
.sec04 .cont03 {
    background: #fff url(../img/icamera_num03.png) center top 45px no-repeat;
}

.sec04 .cont03 .box {
    display: block;
    justify-content: center;
}

.sec04 .cont03 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont03 .box .image img {
    width: 100%;
}

.sec04 .cont03 .box .text {
    margin: 0 0 20px;
    line-height: 2.3;
}

.sec04 .cont03 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* cont04 */
.sec04 .cont04 {
    background: #fff url(../img/icamera_num04.png) center top 45px no-repeat;
}

.sec04 .cont04 .box {
    display: block;
    justify-content: center;
    flex-direction: row-reverse;
}

.sec04 .cont04 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont04 .box .image img {
    width: 100%;
}

.sec04 .cont04 .box .text {
    line-height: 2.3;
    margin: 0;
}

.sec04 .cont04 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* cont05 */
.sec04 .cont05 {
    background: #fff url(../img/icamera_num05.png) center top 45px no-repeat;
}

.sec04 .cont05 .box {
    display: block;
    justify-content: center;
}

.sec04 .cont05 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont05 .box .image img {
    width: 100%;
}

.sec04 .cont05 .box .text {
    line-height: 2.3;
}

.sec04 .cont05 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* cont06 */
.sec04 .cont06 {
    background: #fff url(../img/num06.png) center top 45px no-repeat;
}

.sec04 .cont06 .box {
    display: block;
    justify-content: center;
    flex-direction: row-reverse;
}

.sec04 .cont06 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont06 .box .image img {
    width: 100%;
}

.sec04 .cont06 .box .text {
    margin: 0;
    line-height: 2.3;
}

.sec04 .cont06 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* cont07 */
.sec04 .cont07 {
    background: #fff url(../img/num07.png) center top 45px no-repeat;
}

.sec04 .cont07 .box {
    display: block;
    justify-content: center;
    align-items: flex-end;
}

.sec04 .cont07 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont07 .box .image img {
    width: 100%;
}

.sec04 .cont07 .box .text {
    margin: 0 0 25px;
    line-height: 2.3;
}

.sec04 .cont07 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

.sec04 .cont07 .subbox {
    width: 100%;
    padding: 15px 0;
    box-sizing: border-box;
    background: rgba(111, 158, 212, 0.36);
}

.sec04 .cont07 .subbox .title {
    margin: 0 0 20px;
    font-size: 16px;
    font-weight: bold;
    color: #1f296e;
    text-align: center;
}

.sec04 .cont07 .subbox .list_box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 80%;
    margin: 0 auto 30px;
}

.sec04 .cont07 .subbox .list:nth-of-type(1) {
    margin: 0;
}

.sec04 .cont07 .subbox .list .item {
    position: relative;
    padding: 0 0 0 20px;
    font-weight: bold;
}

.sec04 .cont07 .subbox .list .item:before {
    content: "■";
    position: absolute;
    top: 0;
    left: 0;
    color: #1f296e;
}

.sec04 .cont07 .subbox .text02 {
    font-size: 15px;
    font-weight: bold;
    text-align: center;
}

/* cont08 */
.sec04 .cont08 {
    background: #fff url(../img/num08.png) center top 45px no-repeat;
}

.sec04 .cont08 .text {
    width: 100%;
    margin: 0 auto 45px;
    line-height: 2.3;
}

.sec04 .cont08 .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

.sec04 .cont08_list {
    display: block;
    justify-content: center;
}

.sec04 .cont08_list .item {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.sec04 .cont08_list .item:nth-of-type(1) {
    margin: 0 auto 30px;
}

.sec04 .cont08_list .item_title {
    position: absolute;
    top: 276px;
    right: -10px;
    width: 80%;
    padding: 5px;
    box-sizing: border-box;
    background: rgba(190, 158, 58, 0.75);
    font-size: 18px;
    font-family: "ヒラギノ明朝 Pro";
    font-weight: bold;
    color: #fff;
    text-align: right;
}

.sec04 .cont08_list .item_image {
    width: 100%;
    height: 296px;
    margin: 0 0 40px;
    background: #d1d1d1;
}

.sec04 .cont08_list .item_text {
    padding: 0 20px;
    line-height: 1.7;
}

/* cont09 */
.sec04 .cont09 {
    width: 100%;
    padding: 120px 20px 40px;
    margin: 0 0 35px;
    box-sizing: border-box;
    background: #fff url(../img/num09.png) center top 45px no-repeat;
}

.sec04 .cont09 .cont_text {
    width: 100%;
    margin: 0 auto 20px;
    line-height: 2;
}

.sec04 .cont09 .cont_text .color {
    color: #D92B21;
}

.sec04 .cont09 .cont_image {
    margin: 0 0 50px;
    text-align: center;
}

.sec04 .cont09 .system01{
    margin: 0 0 50px;
}

.sec04 .cont09 .system_title {
    margin: 0 0 30px;
    font-size: 18px;
    font-weight: bold;
    color: #1f296e;
    text-align: center;
}

.sec04 .cont09 .cont_text.text02 {
    width: 100%;
    margin: 0 auto 50px;
}

.sec04 .cont09 .system01 .box {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    margin: 0 auto;
    background: #F7F7F7;
}

.sec04 .cont09 .system01 .list .item {
    display: block;
    justify-content: space-between;
    flex-direction: row-reverse;
    margin: 0 0 50px;
}

.sec04 .cont09 .system01 .list .item:last-of-type {
    margin: 0;
}

.sec04 .cont09 .system01 .list .item_image {
    min-width: auto;
    max-width: 100%;
    width: 375px;
    margin: 0 auto;
    text-align: center;
}

.sec04 .cont09 .system01 .box .textbox {
    /* width: 475px; */
    margin: 18px 0 30px;
}

.sec04 .cont09 .system01 .box .textbox .item_title {
    margin: 0 0 15px;
    font-size: 17px;
    font-weight: bold;
    text-align: center;
}

.sec04 .cont09 .system01 .box .textbox .item_text {
    line-height: 1.9;
}

.sec04 .system02 {
    margin: 0 0 80px;
}

.sec04 .system02 .box {
    display: block;
    justify-content: center;
}

.sec04 .system02 .box .text {
    width: 100%;
    margin: 0 0 30px;
    line-height: 2.3;
}

.sec04 .system02 .box .image {
    text-align: center;
}

.sec04 .system03 .box {
    display: block;
    justify-content: center;
    flex-direction: row-reverse;
}

.sec04 .system03 .box .text {
    width: 100%;
    margin: 0 0 30px;
    line-height: 2.3;
}

.sec04 .system03 .box .image {
    text-align: center;
}

/* cont10 */
.sec04 .cont10 {
    background: #fff url(../img/num10.png) center top 45px no-repeat;
}

.sec04 .cont10 .box {
    display: block;
    justify-content: center;
}

.sec04 .cont10 .box .image {
    width: 100%;
    min-width: 100%;
    margin: 0 0 30px;
}

.sec04 .cont10 .box .image img {
    width: 100%;
}

.sec04 .cont10 .box .text {
    line-height: 2.3;
}

.sec04 .cont10 .box .text .line {
    padding: 0 0 5px;
    background: linear-gradient(transparent 33%, rgba(111, 158, 212, 0.36) 0);
    font-weight: bold;
    color: #1f296e;
}

/* =====sec05===== */
.sec05 {
    padding: 60px 0;
}

.sec05_title {
    position: relative;
    margin: 0 0 50px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}

.sec05 .flow_list {
    display: block;
    justify-content: center;
    width: 90%;
    margin: 0 auto 75px;
}

.sec05 .flow_list .item {
    width: 100%;
    height: 54px;
    background: #1f296e;
    box-shadow: 5px 5px 0 rgba(111, 158, 212, 0.36);
    text-align: center;
    line-height: 54px;
}

.sec05 .flow_list .item .color {
    color: #be9e3a;
}

.sec05 .flow_list .item .color02 {
    font-size: 18px;
    font-weight: bold;
    color: #FA6964;
}

.sec05 .flow_list .item a {
    display: block;
    width: 100%;
    height: 100%;
    background: #1f296e;
    font-size: 15px;
    font-weight: bold;
    color: #fff;
}

.sec05 .flow_list .item:nth-of-type(1) {
    margin: 0 0 30px;
}

.sec05 .body_wrap {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
}

.sec05_text {
    position: relative;
    padding: 55px 0 0;
    margin: 0 0 50px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.125em;
}

.sec05_text:before {
    content: "flow";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    font-size: 20px;
    font-weight: bold;
    color: #1f296e;
    letter-spacing: 0.26em;
}

.sec05_body {
    width: 100%;
    margin: 0;
}

.sec05_body .step {
    padding: 10px 0 0;
}

.sec05 .step_title {
    padding: 0 0 7px;
    border-bottom: 1px solid #1f296e;
    margin: 0 0 20px;
    font-size: 22px;
    font-weight: bold;
}

.sec05 .step_body {
    padding: 0 15px;
}

.sec05 .step_text {
    width: 100%;
    margin: 0 0 30px;
    font-weight: bold;
    line-height: 2.2;
}

.sec05 .step_text.text02 {
    margin: 0;
}

.sec05 .step_subtitle {
    margin: 0 0 10px;
}

.sec05 .step .list {
    width: 100%;
    margin: 0 0 30px;
}

.sec05 .step .list .item {
    position: relative;
    padding: 0 0 0 15px;
    font-weight: bold;
    line-height: 2.2;
}

.sec05 .step .list .item:before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
}

/* step01 */
.sec05 .step01 {
    position: relative;
    padding: 100px 0 30px;
}

.sec05 .step01:before {
    content: "STEP1";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

.sec05 .step01:after {
    content: "";
    position: absolute;
    top: 146px;
    left: -140px;
    display: none;
    width: 1px;
    height: 140px;
    border-right: 1px dashed #be9e3a;
}

/* step02 */
.sec05 .step02 {
    position: relative;
    padding: 100px 0 30px;
}

.sec05 .step02:before {
    content: "STEP2";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

.sec05 .step02:after {
    content: "";
    position: absolute;
    top: 146px;
    left: -140px;
    display: none;
    width: 1px;
    height: 411px;
    border-right: 1px dashed #be9e3a;
}

/* step03 */
.sec05 .step03 {
    position: relative;
    padding: 0 0 100px;
    padding: 100px 0 30px;
}

.sec05 .step03:before {
    content: "STEP3";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

.sec05 .step03:after {
    content: "";
    position: absolute;
    top: 146px;
    left: -140px;
    display: inline-block;
    width: 1px;
    height: 124px;
    border-right: 1px dashed #be9e3a;
}

/* step04 */
.sec05 .step04 {
    position: relative;
    padding: 100px 0 30px;
}

.sec05 .step04:before {
    content: "STEP4";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

.sec05 .step04:after {
    content: "";
    position: absolute;
    top: 146px;
    left: -140px;
    display: none;
    width: 1px;
    height: 427px;
    border-right: 1px dashed #be9e3a;
}

.sec05 .step04 .list .item {
    position: relative;
    padding: 0 0 0 15px;
    font-weight: bold;
    line-height: 2.2;
}

.sec05 .step04 .list .item:before {
    content: "①";
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
}

.sec05 .step04 .list .item.item02:before {
    content: "②";
}

/* step05 */
.sec05 .step05 {
    padding: 40px 20px;
    box-sizing: border-box;
    background: #fffeee;
}

.sec05 .step05 .inner_wrap {
    width: 100%;
    margin: 0 auto;
}

.sec05 .step05_inner {
    position: relative;
    width: 100%;
    padding: 100px 0 0;
    margin: 0;
}

.sec05 .step05_inner:before {
    content: "STEP5";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

.sec05 .step05_inner:after {
    content: "";
    position: absolute;
    top: 146px;
    left: -140px;
    display: none;
    width: 1px;
    height: 238px;
    border-right: 1px dashed #be9e3a;
}

.sec05 .step05 .step_title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sec05 .step05 .step_title .title_r {
    font-size: 18px;
    font-weight: bold;
    color: #1f296e;
}

/* step06 */
.sec05 .step06 {
    position: relative;
    padding: 120px 0 30px;
}

.sec05 .step06:before {
    content: "STEP6";
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

.sec05 .step06:after {
    content: "";
    position: absolute;
    top: 216px;
    left: -140px;
    display: none;
    width: 1px;
    height: 94px;
    border-right: 1px dashed #be9e3a;
}

/* step07 */
.sec05 .step07 {
    position: relative;
    padding: 100px 0 0;
}

.sec05 .step07:before {
    content: "STEP7";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 200px;
    height: 80px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #be9e3a;
    line-height: 80px;
    text-align: center;
}

/* =====sec06===== */
.sec06 {
    width: 100%;
    padding: 50px 20px;
    box-sizing: border-box;
    background: #1f296e;
}

.sec06_inner {
    width: 100%;
    margin: 0 auto;
}

.sec06 .cont01 {
    width: 100%;
    padding: 30px 20px;
    box-sizing: border-box;
    background: #fff;
}

.sec06 .cont_title {
    padding: 0 0 20px;
    border-bottom: 1px solid #1f296e;
    margin: 0 0 20px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.1em;
}

/* =====sec07===== */
.sec07 {
    width: 100%;
    padding: 50px 20px;
    border-top: 1px solid #be9e3a;
    border-bottom: 1px solid #be9e3a;
    box-sizing: border-box;
    background: #fffef5;
}

.sec07_title {
    margin: 0 0 15px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

.sec07_text {
    margin: 0 0 55px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}

.sec07 .table {
    width: 100%;
    margin: 0 auto;
    background: #fff;
}

.sec07 .table .row {
    border-bottom: 1px solid #1f296e;
}

.sec07 .table .head,
.sec07 .table .data {
    padding: 5px 2px;
    font-size: 15px;
    text-align: center;
    vertical-align: middle;
}

.sec07 .table .head:not(:nth-of-type(4)) {
    border-right: 1px solid #1f296e;
}

.sec07 .table .data:not(:nth-of-type(3)) {
    border-right: 1px solid #1f296e;
}

/* =====sec08===== */
.sec08 {
    width: 100%;
    padding: 40px 20px;
    box-sizing: border-box;
}

.sec08_title {
    position: relative;
    padding: 0 0 45px;
    margin: 0 0 35px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

.sec08_title:after {
    content: "FAQ";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    font-size: 20px;
    font-family: "ヒラギノ明朝 ProN";
    font-weight: bold;
    color: #1f296e;
    text-align: center;
}

.sec08_body {
    display: block;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
}

.sec08 .cont01,
.sec08 .cont02,
.sec08 .cont03,
.sec08 .cont04,
.sec08 .cont05,
.sec08 .cont06 {
    border: 1px solid #1f296e;
    box-sizing: border-box;
    margin: 0 0 45px;
    background: #fffeee;
}

.sec08 .cont01,
.sec08 .cont02,
.sec08 .cont05,
.sec08 .cont06 {
    width: 100%;
    padding: 30px 20px 50px;
}

.sec08 .cont03,
.sec08 .cont04 {
    width: 100%;
    padding: 30px 20px;
}

.sec08 .cont_title {
    padding: 0 0 20px;
    border-bottom: 1px dashed #1f296e;
    margin: 0 0 20px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}

.sec08 .cont_title .color {
    display: inline-block;
    margin: 0 0 10px;
    font-size: 30px;
    font-weight: bold;
    color: #be9e3a;
}

.sec08 .cont_text {
    padding: 0 20px;
    line-height: 2.2;
}

.sec08 .cont_text .color {
    font-weight: bold;
    color: #1f296e;
}

/* cont01 */
.sec08 .cont01 .box {
    display: block;
    justify-content: space-between;
    padding: 0 20px;
}

.sec08 .cont01 .box .text {
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 30px;
    font-weight: bold;
    line-height: 2.3;
}

.sec08 .cont01 .box .text .color {
    font-weight: bold;
    color: #1f296e;
}

.sec08 .cont01 .box .text_r .text02 {
    line-height: 1.8;
}

/* =====sec09===== */
.sec09 {
    width: 100%;
    padding: 40px 20px;
    box-sizing: border-box;
    background: #1f296e;
}

.sec09_title {
    margin: 0 0 30px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    text-align: center;
}

.sec09_body {
    width: 100%;
    padding: 40px 0;
    margin: 0 auto;
    background: #fff;
}

.sec09_list {
    width: 90%;
    margin: 0 auto;
}

.sec09_list .item {
    padding: 0 0 0 20px;
    background: url(../img/square.png) left top 12px no-repeat;
    font-weight: bold;
    line-height: 2.2;
}

/* =====sec10===== */

.sec10 {
    width: 100%;
    padding: 146px 20px 51px;
    border-top: 1px solid #be9e3a;
    border-bottom: 1px solid #be9e3a;
    box-sizing: border-box;
    background: url(../img/logo04.png) center top 42px no-repeat;
    background-color: #fffef5;
    text-align: center;
}

.sec10_box {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}

.sec10_contact {
    width: 469px;
    max-width: 100%;
}

.sec10_contact .title {
    padding: 8px 0;
    margin: 0 0 12px;
    background: #1f296e;
    font-size: 16px;
    font-family: "游ゴシック体";
    color: #fff;
}

.sec10_contact .tel {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    margin: 0 0 22px;
}

.sec10_contact .num {
    padding: 0 0 0 35px;
    margin: 0 20px;
    background: url(../img/home_icon12.png) center left no-repeat;
    font-size: 25px;
    font-weight: bold;
    font-family: "游ゴシック体";
}

.sec10_contact .time {
    padding: 0;
    font-size: 15px;
    font-family: "小塚ゴシック Pro";
    vertical-align: middle;
}

.sec10 .reservebox {
    position: relative;
    display: block;
    justify-content: center;
    width: 100%;
    padding: 25px 0 20px;
    border: 1px solid #be9e3a;
    box-sizing: border-box;
    margin: 0 auto;
    background: #fff;
}

.sec10 .reservebox:before {
    content: "オンライン予約";
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    width: 170px;
    height: 34px;
    padding: 0 0 0 53px;
    box-sizing: border-box;
    background: url(../img/home_icon02.png) top left 12px/25px no-repeat;
    background-color: #fff;
    font-size: 15px;
    font-family: "小塚ゴシック Pro";
    color: #be9e3a;
    line-height: 34px;
}

.sec10 .reserve {
    width: 204px;
    height: 38px;
    margin: 0 auto;
    background: #be9e3a;
    box-shadow: 1.5px 1.5px 1.5px rgba(82, 78, 35, 0.75);
}

.sec10 .reserve01 {
    margin: 0 auto 20px;
}

.sec10 .reserve a {
    display: block;
    box-sizing: border-box;
    font-size: 18px;
    color: #fff;
    font-family: "小塚ゴシック Pro";
    text-shadow: 3px 3px 3px rgba(82, 78, 35, 0.75);
    line-height: 38px;
}

.sec10 .reserve01 a {
    padding: 0 62px 0 30px;
    background: url(../img/home_icon14.png) top 9px right 28px no-repeat;
}

.sec10 .reserve02 a {
    padding: 0 40px 0 20px;
    background: url(../img/home_icon14.png) top 9px right 15px no-repeat;
}


}