@charset "utf-8";

/* CSS Document */
body {
    color: #2d2d2d;
    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: 19px;
}


h1 {
    font-size: 250%;
}

h2 {
    font-size: 230%;
}

h3 {
    font-size: 150%;
}

h4 {
    font-size: 125%;
}

h5 {
    font-size: 100%;
}


.tokuten_ttl{ /*font-size:5em;*/
	font-family: serif;
font-size:130%; 
	    line-height: 1.3em;
	text-align:center;
	/*line-height:0.95em;*/
	font-weight:bold;
	color: transparent;
	background: linear-gradient(178deg, rgba(154,109,33,1) 0%, rgba(199,174,134,1) 50%, rgba(154,109,33,1) 100%);
	-webkit-background-clip: text;
}


@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: 150%
    }

    h2 {
        font-size: 150%;
    }

    h3 {
        font-size: 120%
    }

    h4 {
        font-size: 100%
    }

    h5 {
        font-size: 100%
    }
}



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;
    }
}


/************吹き出し見出し***********************************/



h1 {
  position: relative;
  padding: 0.5em 0;
	text-align: center;
}
h1::before,
h1::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box;
}
h1::before {
  top: 0;
  border-top: 3px solid #060606;
  border-bottom: 1px solid #060606;
}
h1::after {
  bottom: 0;
  border-top: 1px solid #060606;
  border-bottom: 3px solid #060606;
}
.triangle3 {
    width: 0;
    height: 0;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 30px solid black;
    margin-left: 43%;
			margin-bottom: 1rem;
}

@media screen and (max-width: 450px) {
	
	h1 { overflow: hidden;
  position: relative;
  padding: 0.5em 0;
		font-size: 2rem;
			text-align: center;

}
h1::before,
h1::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box;
}
h1::before {
  top: 0;
  border-top: 3px solid #060606;
  border-bottom: 1px solid #060606;
}
h1::after {
  bottom: 0;
  border-top: 1px solid #060606;
  border-bottom: 3px solid #060606;
}
	
	
	
	
	
	
	
	
	.triangle3 {
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid black;
    margin-left: 43%;
				margin-bottom: 1.5rem;
}
}
/*=========================================================================

　　　　↓ヘッダー↓

===========================================================================*/
header {
    width: 100%;
    text-align: center;
    background: #f1e0fc;
    background-repeat: no-repeat;
    background-size: initial;
    background-position: center;

}

.header_in {
    position: relative;
    margin: 0 auto;
    max-width: 980px;
	padding-top: 20px;
    /*ナビありpadding
	padding-top: 70px;*/
}

.header_bar {
    background: #fff;
    position: fixed;
    overflow: hidden;
    z-index: 999;
    width: 100%;
    padding: 0.5em 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 {

    max-width: 13%;
}

@media screen and (max-width: 700px) {
	
	.header_in{width: 90%;
	}
	.logo {

    max-width: 35%;
}

.header_bar {
    background: #fff;
    position: fixed;
    overflow: hidden;
    z-index: 999;
    width: 100%;
    padding: 0.5em 1em;
    box-sizing: border-box;
}	
	
	
}
.head_btn {

    max-width: 38%;
}

.gif_back {
    position: relative;
    max-width: 1200px;
    background: url(../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;
}



nav{
text-align: center;
	width:90%;
}
nav ul{
margin: 0 ;
padding: 0 ;
	
}
nav ul li{
list-style: none;
display: inline-block;
width: 20%;
min-width: 90px;
}
nav ul li a{
text-decoration: none;
color: #333;
}
nav ul li.current a{
color: #F33135;
}
nav ul li a:hover{
color: #6E054A;
	opacity: 0.5;
	transition: all .3s;
}

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

    /* 表示領域が700px以下の場合に適用するスタイル */
    .news {
        font-size: 90%;
        margin-top: -2.8em;
    }

    .header_in {
       padding-top: 5%;
    }
	
	
	.header_bar_in {
    position: relative;
    margin: 0 auto;
    width: 100%;
    display: flex;
  justify-content: flex-end;
    align-content: center;
    flex-direction: row;
    align-items: center;
}

	nav ul li{
list-style: none;
display: inline-block;
width: initial!important;
min-width: initial!important;
		font-size: 80%;
}
	
	nav {
    text-align: center;
     width: 100%; 
}
	
}
/*=========================================================================

　　　　↓全体レイアウト↓

===========================================================================*/
#contents {
    max-width: 100%;
    margin: 0 auto;
    background-color: #fff;
}

.contents{max-width:1000px;
margin:0 auto;}

@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: 3% 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;
}


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

背景三角 

===========================================================================*/
.present{position:relative;}

.bg_w {
  background: #fff;
    background-image:  url(../img/bg_present.png);
	   background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
	padding: 5em 0 3em;
}
.bg_w:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 50vw 0 50vw;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
}




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

背景

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



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

　　　　↓ブレット↓

===========================================================================*/
.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%;
}

.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;
    }
}

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

　　　　↓テーブル↓

===========================================================================*/
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;
    }

}

#send-table {
    border-left: 1px solid #dcdcc1;
    border-top: 1px solid #dcdcc1;
    font-size: 100%;
}

#send-table th {
    background-color: #656565;
    text-align: left;
    border-right: 1px solid #dcdcc1;
    border-bottom: 1px solid #dcdcc1;
    color: #fff;
}

#send-table td {
    background-color: #fff;
    border-right: 1px solid #dcdcc1;
    border-bottom: 1px solid #dcdcc1;
}

#send-table caption {
    background: #7FBFFF;
    padding: 8px 12px;
    margin: 5px 0;
    color: #fff;
    font-size: 130%;
    font-weight: 700;
}

.hissu {
    background: #D60019;
    border-radius: 3px;
    padding: 2px 3px;
    font-size: 80%;
    color: #fff;
	font-weight:500;
}

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

　　　　↓Q&A↓

===========================================================================*/
.qa {
    background: #fff;
}

.qa dl {
    border-radius: 5px;
    margin: 0 0 1em;
}

.qa dt {
    background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/q01.jpg);
    background-position: left top;
    background-size: 1.3em;
    padding: 0 0 4px 2em;
    background-repeat: no-repeat;
    font-size: 1.2em;
    font-weight: 700;
    border-bottom: solid 1px #d10014;
    margin: 0 0 .5rem;
}

.qa dd {
    background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/a01.jpg);
    background-position: left top;
    background-size: 1.3em;
    padding: 0 0 1em 2em;
    background-repeat: no-repeat;
    margin: 0;
}

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

　　　　↓画像系↓

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

.right_pic {
    padding: 0 0 1em 1em;
    float: right;
}

.left_pic {
    padding: 0 1em 1em 0;
    float: left;
}

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

    /* 表示領域が600px以下の場合に適用するスタイル */
    .right_pic {
        padding: 0 0 1em 1em;
        float: right;
        width: 50%;
    }

    .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: 60%;
        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;
    }

}


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

　　　　↓特典↓

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

.bg_p{ background: #F5EAF4;
padding:4em 0 4em;}

.tokuten_wrapper{padding:1em;}

.present-text{font-size:200%;
font-weight:700;
color:#2d2d2d;
background:#FECD00;
padding:1rem 2rem;
border-radius:50px;
position:absolute;
top:-40px;
	    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
margin:0 auto;}


@media screen and (min-width: 1000px) {
.present-text{
	font-size:150%;
	font-weight:700;
	width: 70%!important;}
}

@media screen and (max-width: 700px) {
.present-text {
    font-size: 100%!important;
    font-weight: 700;
    width: 80%!important;
    color: #2d2d2d;
    background: #FECD00;
    padding: 1rem 2rem;
    border-radius: 50px;
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    margin: 0 auto;
	}}




.bg_w2{background: #fff;
position:relative;}

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

　　　　↓決済↓

===========================================================================*/
.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;
}

.cv_area{background:#6E054A;
color:#fff;
margin:0 auto;
text-align:center;
padding: 2em 0.5em;
right:50%;}

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

　　　　↓ボタン↓

===========================================================================*/
.submit {
    background-color: #48bb00;
    box-shadow: 0 8px 0 #399400;
    text-shadow: 0 -1px #007b15;
    position: relative;
    padding: .5em;
    border-radius: 5px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    margin: .3em 1em 1.7rem;
    text-align: center;
    box-sizing: border-box;
}

.submit:active,
.submit:hover {
    top: 8px;
    box-shadow: none;
}

.submit02 {
    background-color: #dc8e00;
    box-shadow: 0 8px 0 #945a00;
    text-shadow: 0 -1px #a36900;
    position: relative;
    padding: .5em;
    border-radius: 5px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    margin: .3em 1em 1.7rem;
    text-align: center;
    box-sizing: border-box;
}

.submit02:active,
.submit02:hover {
    top: 8px;
    box-shadow: none;
}

.imgbtn {
    display: block;
    margin: 30px auto;
}

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

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

ボタン

===========================================================================*/
.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: #043454;
    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: 70%;
	max-width: 600px;
    margin: 0 auto 2.66667vw;
    z-index: 10;

}
.button__box: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;
}


.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

.btn-wrap {
  margin: 30px 0;
}

a.btn-c {
  font-size: 2.2rem;

  position: relative;

  padding: 0.25rem 2rem 1.5rem 3.5rem;

   color: #043454;
   background: linear-gradient(to bottom,#ffd94d 0,#ffd94d 50%,#ffc900 50%,#ffc900 100%);
  -webkit-box-shadow: 0 5px 0 #2c9d60;
  box-shadow: 0 5px 0 #81650e;
}

a.btn-c span {font-size: 1.5rem;
    position: absolute;
    top: 10px;
   /* left: calc(50% - 200px);*/
	    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    display: block;
    width: 60%;
    padding: 0.2rem 0;
    color: #fff;
    border: 3px solid #043454;
    border-radius: 0.5rem;
    background: #043454;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

a.btn-c:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);

  color: #fff;
 opacity:.6;
  -webkit-box-shadow: 0 2px 0 #81650e;
  box-shadow: 0 2px 0 #81650e;
}

a.btn-c:hover:before {
  left: 2rem;
}
@media screen and (max-width: 600px) {
	.button__box {font-size: 1.3em!important;
	width: 80%;
    padding: 1rem;}
	
	.btn, a.btn, button.btn {padding:0;}
	a.btn-c {
    font-size: 1.4rem;
    position: relative;
    padding: 1rem 1.5rem 1rem 1.5rem;
    color: #043454;
    background: linear-gradient(to bottom,#ffd94d 0,#ffd94d 50%,#ffc900 50%,#ffc900 100%);
    -webkit-box-shadow: 0 5px 0 #2c9d60;
    box-shadow: 0 5px 0 #81650e;
		
}
	
	a.btn-c span {
    font-size: 1rem;
    position: absolute;
   /* top: -15px;
    left: calc(50% - 100px);*/
		  top: 10px;
   /* left: calc(50% - 200px);*/
	    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    display: block;
    width: 80%;
    padding: 0.2rem 0;
    color: #fff;
    border: 3px solid #043454;
    border-radius: 0.5rem;
    background: #043454;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}
	
	
}



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

　　　　↓フッター↓

===========================================================================*/
footer {
    width: 100%;
    padding: 0 1em 10px;
    font-size: 80%;
    color: #5F5F5F;
    margin-top: 3em;
    box-sizing: border-box;
}

.footer_in {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 1em;
}

footer a {
    color: #3C3C3C;
}

footer a:hover {
    color: #252525;
}

.page_top a {
    position: fixed;
    bottom: 10px;
    right: 10px;
    display: block;
    text-align: center;
    text-decoration: none;
    background: rgba(72, 187, 0, 0.83);
    color: #fff;
    padding: .5em;
    line-height: 1.4;
    width: 3.5em;
    height: 3.5em;
}

.page_top a:hover {
    background: rgba(121, 121, 121, 0.7);
}

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

    /* 表示領域が320px以下の場合に適用するスタイル */
    .page_top a {
        display: none;
    }
}

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

　　　　↓リンク↓

===========================================================================*/
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 { background: #F5EAF4;
padding:4em 0 4em;}

.sec01 .elem_wrap {}

.sec01 .elem01 {
    max-width: 1200px;
    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 .elem01 .item02 {}

.sec01 .elem01 .item03 {}

.sec01 .elem02 {}

.sec01 .elem02 .item01 {}

.sec01 .elem02 .item02 {}

.sec01 .elem02 .item03 {}

.sec01 .elem03 {}

.sec01 .elem03 .item01 {}

.sec01 .elem03 .item02 {}

.sec01 .elem03 .item03 {}

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

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

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

　　　　↓sec02↓

================================================*/
.sec02 {background:#F0ECE4;
padding-top: 3rem;}

.sec02 .elem_wrap {
    max-width: 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;
}

.sec02 .elem_wrap:nth-child(2) {
    max-width: 100%;
    background: rgb(244, 244, 244);
    background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 30%, rgba(244, 244, 244, 1) 30%, rgba(244, 244, 244, 1) 100%);
}

.sec02 .elem01 {
    max-width: 1400px;
    margin: 0 auto 6%;
    display: flex;
    align-content: flex-start;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
   /* padding-top: 3%;*/
}

.sec02 .elem01.elem02 {
    display: flex;
    align-content: flex-start;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: flex-start;}

.sec02 .elem01 .item01 {
    /* border-radius: 2.5em; */
    /* box-shadow: 2px 2px 6px #aaa; */
   /* width: 40%;*/
    overflow: hidden;
    /* padding: 3%; */
    margin-right: 2%;
    /* background: #fff; */
    margin-left: 2%;
}

.sec02 .elem01 .item01 .item01 {
    background: #52c6cb;
    width: 6em;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 0em 0em 1em 1em;
    padding: 7% 2% 3%;
    line-height: 1.2;
    margin-top: -8.9%;
    margin-bottom: 1%;
    box-shadow: none;
}

.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: 2.5em;
    font-weight: bold;
    margin-bottom: 1%;
    width: 100%;
    line-height: 1.8em;
	padding-top: 0.1em;
	
}

.sec02 .elem01 .item02 {
    width: 30%;
}


.sec02 .elem01 .item03 {
    background: #fff;
    padding: 1em;
    left: -10px;
    /*width: 98%;*/
    margin-top: 1.5em;
	border: 1px solid rgb(152 68 123);
}

.sec02 .elem01 .item03 li {
font-size: 105%;
	line-height: 2.1em;
}
@media screen and (max-width: 700px) {
	.sec02 .elem01 .item03 li {
font-size: 105%;
	line-height: 2em;
}}


.sec02 .elem02 {}

.sec02 .elem02 .item01 {}

.sec02 .elem02 .item02 {}

.sec02 .elem02 .item03 {}

.sec02 .elem03 {}

.sec02 .elem03 .item01 {}

.sec02 .elem03 .item02 {}

.sec02 .elem03 .item03 {}
.illust_img2{padding-right: 3em;}
.illust_img{padding-left: 3em;}
@media screen and (max-width: 1200px) {
    .sec02 .elem01 {
      /*  background: rgb(244, 244, 244);
        background: linear-gradient(90deg, rgba(244, 244, 244, 1) 0%, rgba(244, 244, 244, 1) 80%, rgba(255, 255, 255, 1) 80%, rgba(255, 255, 255, 1) 100%);*/
        padding-top: 1%;
        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: 70%;
    }

    .sec02 .elem01 .item01 .item01 {
        font-size: 72%;
        margin-top: -7%;
    }

    .sec02 .elem01 .item01 .item02 {
        font-size: 30px;
    }
	
	
	/*.illust_img{width: 50%;}*/
	
}

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

    .sec02 .elem01 .item01 .item02 {
        font-size: 8vw;
    }
}


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

　　　　↓sec03↓

================================================*/
.sec03 {
    background: #F0EADE;
	padding: 3em 0;
}

.sec03 .elem_wrap {
    max-width: 800px;
}

.sec03 .elem01 {}

.sec03 .elem01 .item01 {}

.sec03 .elem01 .item02 {}

.sec03 .elem01 .item03 {}

.sec03 .elem02 {
    background: #fff;
    padding: 1.5em 5%;
}

.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) {}

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

　　　　↓sec04↓

================================================*/
.sec04 {background: #6E054A;
	/*background-image:url(../img/bg_img.png);*/
position:relative;
padding: 3em 0 1em;}


.bg_img{background-repeat: no-repeat;
    background-position: center bottom;
   /* background-image: url(../img/bg_img.png);
    /* padding-top: 80px; */
    min-height: 750px;
	background-size: cover;
bottom:20px;}

.sec04:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 60px 50vw 0 50vw;
  border-color: #6E054A transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
}



.sec04 .elem_wrap {}

.sec04 .elem01 {
    max-width: 1000px;
    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) {}





.learn__icon {
    width: 8%;
    margin-right: 3vw;
}
@media (min-width: 768px){
.learn__icon {
    margin-right: 20px;
    width: 6%;
	}}


.learn__piece {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background-color: #fff;
    padding: 2vw 2.5vw;
    margin-bottom: 0.6em;
}
@media (min-width: 768px){
.learn__piece {
    padding: 13px 10px 13px 25px;
	}
	.learn__piece:nth-of-type(n+2) {
    margin-top: 20px;
}
.learn__text {
    font-size: 20px;
}


.learn__text {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    width: 92%;
	}}
/*==============================================

　　　　↓sec05↓

================================================*/
.sec05 {
    background: #fff;
	padding: 3em 0 1em;
}

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: 2.5em;
	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: 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 .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: 7vw;
}
    
}

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

　　　　↓sec07↓

================================================*/
.sec07 {
    background: #eb6a45;
	padding: 3em 0 1em;
}

.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%;
}

.sec07 .elem02 {}

.sec07 .elem02 .item01 {}

.sec07 .elem02 .item02 {}

.sec07 .elem02 .item03 {}

.sec07 .elem03 {}

.sec07 .elem03 .item01 {}

.sec07 .elem03 .item02 {}

.sec07 .elem03 .item03 {}

@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 {
	}
}

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

　　　　↓sec08↓

================================================*/
.sec08 {
background: #F5EAF4;
padding:4em 0 0;
    padding-top: 5%;
}

.sec08 .elem_wrap {
    max-width: 932px;
}

.sec08 .elem01 {}

.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 #6e054a;
    border-radius: 1.4em;
    padding-top: 2em;
}

.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%;
}
}

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

　　　　↓sec09↓

================================================*/
.sec09 {
    background: #F0EADE;
	padding: 3em 0 1em;
}

.sec09 .elem_wrap {
    max-width: 800px;
}

.sec09 .elem01 {
	background: #fff;
	padding: 5%;
	margin-bottom: 1%;
}

.sec09 .elem01 .item01 {}

.sec09 .elem01 .item02 {}

.sec09 .elem01 .item03 {}

.sec09 .elem02 {
	max-width: 800px;
	margin: 0 auto;
}

.sec09 .elem02 .item01 {}

.sec09 .elem02 .item02 {}

.sec09 .elem02 .item03 {}

.sec09 .elem03 {}

.sec09 .elem03 .item01 {}

.sec09 .elem03 .item02 {}

.sec09 .elem03 .item03 {}

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

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

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

　　　　↓sec10↓

================================================*/
.sec10 {padding: 3em 0 1em;}

.sec10 .elem_wrap {
	max-width: 1200px;
}

.sec10 .elem01 {}

.sec10 .elem01 .item01 {}

.sec10 .elem01 .item02 {}

.sec10 .elem01 .item03 {}

.sec10 .elem02 {}

.sec10 .elem02 .item01 {}

.sec10 .elem02 .item02 {}

.sec10 .elem02 .item03 {}

.sec10 .elem03 {}

.sec10 .elem03 .item01 {}

.sec10 .elem03 .item02 {}

.sec10 .elem03 .item03 {}

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

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

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

　　　　↓sec11↓

================================================*/
.sec11 {
    background: #F0EADE;
	padding: 3em 0 1em;
}

.sec11 .elem_wrap {}

.sec11 .elem01 {}

.sec11 .elem01 .item01 {}

.sec11 .elem01 .item02 {}

.sec11 .elem01 .item03 {}

.sec11 .elem02 {}

.sec11 .elem02 .item01 {}

.sec11 .elem02 .item02 {}

.sec11 .elem02 .item03 {}

.sec11 .elem03 {}

.sec11 .elem03 .item01 {}

.sec11 .elem03 .item02 {}

.sec11 .elem03 .item03 {}

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

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

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

　　　　↓sec12↓

================================================*/
.sec12 {padding: 3em 0 1em;}

.sec12 .elem_wrap {}

.sec12 .elem01 {}

.sec12 .elem01 .item01 {}

.sec12 .elem01 .item02 {}

.sec12 .elem01 .item03 {}

.sec12 .elem02 {}

.sec12 .elem02 .item01 {}

.sec12 .elem02 .item02 {}

.sec12 .elem02 .item03 {}

.sec12 .elem03 {}

.sec12 .elem03 .item01 {}

.sec12 .elem03 .item02 {}

.sec12 .elem03 .item03 {}

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

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

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

　　　　↓sec13↓

================================================*/
.sec13 {
    background: #F0EADE;
	padding: 3em 0 1em;
}

.sec13 .elem_wrap {}

.sec13 .elem01 {}

.sec13 .elem01 .item01 {}

.sec13 .elem01 .item02 {}

.sec13 .elem01 .item03 {}

.sec13 .elem02 {}

.sec13 .elem02 .item01 {}

.sec13 .elem02 .item02 {}

.sec13 .elem02 .item03 {}

.sec13 .elem03 {}

.sec13 .elem03 .item01 {}

.sec13 .elem03 .item02 {}

.sec13 .elem03 .item03 {}

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

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

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

　　　　↓sec14↓

================================================*/
.sec14 {padding: 3em 0 1em;}

.sec14 .elem_wrap {
    max-width: 800px;
}

.sec14 .elem01 {}

.sec14 .elem01 .item01 {}

.sec14 .elem01 .item02 {}

.sec14 .elem01 .item03 {}

.sec14 .elem02 {}

.sec14 .elem02 .item01 {}

.sec14 .elem02 .item02 {}

.sec14 .elem02 .item03 {}

.sec14 .elem03 {}

.sec14 .elem03 .item01 {}

.sec14 .elem03 .item02 {}

.sec14 .elem03 .item03 {}

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

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

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

　　　　↓sec15↓

================================================*/
.sec15 {
	background: #F0EADE;padding-bottom:3em;
}

.sec15 .elem_wrap {
    max-width: 1000px;
}

.sec15 .elem01 {}

.sec15 .elem01 .item01 {}

.sec15 .elem01 .item02 {}

.sec15 .elem01 .item03 {}

.sec15 .elem02 {}

.sec15 .elem02 .item01 {}

.sec15 .elem02 .item02 {}

.sec15 .elem02 .item03 {}

.sec15 .elem03 {}

.sec15 .elem03 .item01 {}

.sec15 .elem03 .item02 {}

.sec15 .elem03 .item03 {}

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

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

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

　　　　↓sec16↓

================================================*/
.sec16 {padding: 0 0 1em;}

.sec16 .elem_wrap {
    max-width: 927px;
}

.sec16 .elem01 {}

.sec16 .elem01 .item01 {}

.sec16 .elem01 .item02 {}

.sec16 .elem01 .item03 {}

.sec16 .elem02 {}

.sec16 .elem02 .item01 {}

.sec16 .elem02 .item02 {}

.sec16 .elem02 .item03 {}

.sec16 .elem03 {}

.sec16 .elem03 .item01 {}

.sec16 .elem03 .item02 {}

.sec16 .elem03 .item03 {}

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

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

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

　　　　↓追加↓

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


span.q {
    color: #52c6cb;
    padding-right: 0.4em;
}

span.a {
    color: #ed562b;
    padding-right: 0.4em;
}



.y_line{background:linear-gradient(transparent 70%, #ff6 70%)!important;}
.tokuten_step{background:#D60019;
padding:.3em .5em;
color:#fff;
font-weight:700;
font-size:120%;}


.tokuten_step::before{
    position: absolute;
    top: 0;
    left: -15px;
    width: 0px;
    height: 0px;
    border-color: #f1a4aa transparent;
    border-width: 25px 0px 25px 15px;
    border-style: solid;
    content: '';
}
	
	
@media screen and (max-width: 770px) {.tokuten_step{background:#D60019;
padding:.3em .5em;
color:#fff;
font-weight:700;
	font-size:120%;}}
	
	
	/****************内容タイトル******************************************/
	
	.full-line {
  padding: 1rem 0;

 /* border-image-source: linear-gradient(#10a1da,#10a1da);*/

  border-image-slice: 0 fill;

  border-image: linear-gradient(#6E054A,#6E054A) fill 0//0 50px 0 100vw;		

}
	
	.full-line2 {
    padding: 1rem 0;
    border-image-source: linear-gradient(#6E054A,#6E054A);
    border-image-slice: 0 fill;
    border-image-outset: 0 100vw 0 50px;
		  padding: 1rem 0;
  border-image-slice: 0 fill;

}


section .naiyou1 {
  /* center + max-width:800px + min-margin: 10px */
     margin-inline: max(30px, 50% - 526px/2);
  margin-block: 50px; 
color:#fff;
	left: 16vw;
    position: relative;
}
	section .naiyou2 {
  /* center + max-width:800px + min-margin: 10px */
     margin-inline: max(30px, 50% - 1181px/2);
  margin-block: 50px; 
color:#fff;
}
	
	section .naiyou2 span,section .naiyou1 span{
		font-size:120%;
	font-weight: 600;
display: inline-block;}
	
	
		section .naiyou2 .full-line2 span{right:0;}
	


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

section .naiyou2 span, section .naiyou1 span {
    font-size: 115%;
    font-weight: 600;
    display: inline-block;
	}

	section .naiyou2 {
     margin-inline: initial;

}



section .naiyou1 {
	    left: initial;
    position: relative;
}

}



/*.menu-box {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 10px;
  background-color: #333;
  box-sizing: border-box;
}*/
.menu-box {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    /*display: flex;
    justify-content: space-between;
    align-items: center;*/
    padding: 14px 20px;
    background-color: #F4F4F4;
}

@media screen and (max-width: 435px) {
.menu-box {
    padding: 14px 16px;
}	
}
/*.menu-box .menu-btn {
  width: 100%;
}*/
.menu-box ul {
  display: none;
  width: 100%;
  background-color: #ccc;
}
.menu-box ul li a {
  display: block;
  border-bottom: 1px solid #fff;
  padding: 0.3em 0.7em;
  color: #292929;
  background: #e0dfdf;
}

.menu-box ul li a:hover {
  background: #f1f0f0;
}


.menu-box ul li:last-child a {
  border-bottom: none;
}
.menu-btn:before {
  content: '\f0c9';
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  color: #333;
  font-size: 2.0rem;
}
.menu-btn.active:before {
  content: '\f00d';

/*position: absolute;
top: 0px; left: 0px;*/
}


/*section h2 {
  margin-top: -80px;
  padding-top: 80px;
}*/


.menu-btn:before {
  content: '\f0c9';
}
.menu-btn.active:before {
  content: '\f00d';
}


/*CSSのz-indexを有効化。メニューが上、動画が下の重なり順にすることができます。*/
.movie{
z-index: 0!important;
}

.menu-box{
z-index: 1!important;
    box-shadow: 0px 3px 10px #0000001c;
}



/*見出しがナビゲーションで隠れるので記述。*/
.space {
    margin-top: -30px;
    padding-top: 30px;
}

/*2つ目以降の大見出し<h1>に適用。*/
.no_space {
    margin-top: 0px;
    padding-top: 10px;
}



/*ノート線*/
.sen4{
  background-color: #fff;
  background-image:
  linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 97.5%, #646464 100%);
  background-size: 8px 100%,100% 2em;
  line-height: 3em;
  padding: 0em 0em 0.5em 0em;
}


/*ドット*/
.dots span {
  position: relative; /* 基準値とする */
}
.dots span::before {
  content: "・";       /* 文字の上に置くものを指定 */
  position: absolute; /* 相対位置とする */
  top: -1.15em;          /* 縦方向の表示位置を調整（-1emくらいがちょうどいいかんじ） */
  left: 0; 
	color:#dca9ca;/* 横方向の表示位置を調整 */
}


.content_title .input_unit .my_left.my_column, .content_box .input_unit .my_left.my_column, .content_confirm .input_unit .my_left.my_column, .content_form .input_unit .my_left.my_column, .content_title .input_unit .my_heading.my_column, .content_box .input_unit .my_heading.my_column, .content_confirm .input_unit .my_heading.my_column, .content_form .input_unit .my_heading.my_column {
    width: 35%;
    vertical-align: middle;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 5px;
    padding-right: 5px;
}

form.myForm .required .my_column.my_left label:first-child:after, form.myForm th.required label:first-child:after, form.myForm span.required:after {
    color: white;
	font-size: 16px;
    content: '必須';
    display: inline-block;
   width: inherit!important;
    height: inherit!important;
    vertical-align: middle;
    background-size: contain;
    background-repeat: no-repeat;
    background-color: #e32;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: 5px;
    margin-right: 0px;
    padding-top: 0.1em;
    padding-bottom: 0.2em;
    padding-left: 4px;
    padding-right: 4px;
    text-align: center;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}

@media screen and (max-width: 435px) {form.myForm input[type="text"], form.myForm input[type="password"] {width: calc(100%)!important;}}