@charset "utf-8";
/* CSS Document */
html {
    min-width: 1200px;
    font-feature-settings: "palt" 1;
    font-size: 24px;
}
body,
body * {
	margin: 0;
	padding: 0;
	line-height: 1.6;
    font-family:-apple-system,BlinkMacSystemFont,"游ゴシック",YuGothic,"Hiragino Kaku Gothic ProN",Segoe UI,メイリオ,Meiryo,sans-serif;
    font-weight: bold;
    box-sizing: border-box;
}
body,
header,
nav,
footer {
	width: 100%;
}
img {
    max-width: 100%;
    height: auto;
}
/*ヘッダー*/
header {
    position: sticky;
    top: 0;
    left: 0;
    background: linear-gradient(to right,  #426CAE 0%,#47BCC6 100%);
    z-index: 5000;
    transition: all 0.6s;
    box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
header img {
    max-width: 316px;
}
header.UpMove {
    top: -100%;
}
header h1 {
    text-align: center;
    padding: 7px 10px 3px;
    color: #FFFFFF;
    font-size: 50px;
    letter-spacing: 9px;
}
header #menu_btn a {
    display: flex;
    padding: 0 0 0 72px;
    position: absolute;
    top: 35px;
    bottom: 0;
    left: calc(50% + 466px);
    height: 24px;
    text-decoration: none;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: -1px;
}
header #menu_btn a:before,
header #menu_btn a:after {
    content: "";
    display: block;
    width: 62px;
    position: absolute;
    left: 0;
    top: -3px;
    bottom: 0;
    margin: auto;
}
header #menu_btn a:before {
    height: 20px;
    border-top: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
}
header #menu_btn a:after {
    background-color: #FFFFFF;
    height: 2px;
}
header #menu_btn a img {
    width: 50px;
    height: auto;
}
nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 1200px;
    width: 1120px;
    height: 68%;
    z-index: 9999;
    transform: rotateX(90deg);
    transition: all 0.6s;
}
nav.active {
    transform: rotateX(0);
}
.nav_bg {
    display: none;
}
nav.active + .nav_bg {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #9FA0A0;
    mix-blend-mode: multiply;
    z-index: 5000;
}
nav #nav_cnt {
    display: flex;
    width: 100%;
    height: 100%;
    background-color: #426CAE;
    padding: 77px 100px 85px 102px;
    box-sizing: border-box;
    overflow: auto;
    gap: 64px;
}
nav #nav_cnt .nav_list {
}
nav #nav_cnt .nav_list p {
    margin: 0 0 18px;
}
nav #nav_cnt .nav_list ul {
    list-style: none;
}
nav #nav_cnt .nav_list ul li {
    margin: 0 0 9px;
}
nav #nav_cnt .nav_list ul li a {
    text-decoration: none;
    color: #FFFFFF;
    font-size: 20px;
    letter-spacing: 1.5px;
}
nav #nav_cnt .nav_list ul li a:hover {
    opacity: 0.5;
}
nav #close_btn {
    position: absolute;
    right: 71px;
    bottom: 37px;
}
nav #close_btn a {
    display: block;
    padding: 27px 98px 20px 0;
    text-decoration: none;
    color: #FFFFFF;
    font-size: 22px;
}
nav #close_btn a:before,
nav #close_btn a:after {
    content: "";
    display: block;
    width: 82px;
    height: 1px;
    background-color: #FFFFFF;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
nav #close_btn a:before {
    transform: rotate(45deg);
}
nav #close_btn a:after {
    transform: rotate(135deg);
}
h2 {
    color: #FFFFFF;
    background: linear-gradient(to right,  #426CAE 0%,#47BCC6 100%);
    text-align: center;
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
    padding: 10px 10px 6px;
    font-size: 40px;
    letter-spacing: 11px;
    text-indent: 12px;
}
h3 {
    color: #FFFFFF;
    background: #314B99;
    text-align: center;
    border-radius: 50px;
    max-width: 1000px;
    margin: 0 auto 10px;
    line-height: 1.2;
    padding: 11px 10px 9px;
    font-size: 25px;
    letter-spacing: 2.5px;
    text-indent: -16px;
}
.txt_center {
    text-align: center;
}
.youtube {
	width: 1000px;
	margin: 0 auto 140px;
}
.youtube_wrap {
	position: relative;
	width: 1000px;
	height: 667px;
	margin: 0 auto;
}
.youtube iframe {
	width: 1000px;
	height: 667px;
}
.youtube_start a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.youtube_start a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
	border: 8px solid #FFFFFF;
	width: 148px;
	height: 148px;
	border-radius: 50%;
}
.youtube_start a::after{
	content: "";
	position: absolute;
	display: block;
    top: 0;
    left: 22px;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 0;
    height: 0;
	border-style: solid;
	border-color: transparent transparent transparent #FFFFFF;
	border-width: 48px 0 48px 80px;
}
.youtube_start span {
    position: relative;
    z-index: -1;
}
#main_visual {
    background: url("../images/main_bg.webp") calc(50% + 290px) top no-repeat
        ,-webkit-linear-gradient(rgba(251,253,253,1) 0%, rgba(198,229,232,1) 50%, rgba(201,217,239,1) 100%);
    background: url("../images/main_bg.webp") calc(50% + 290px) top no-repeat
        ,-o-linear-gradient(rgba(251,253,253,1) 0%, rgba(198,229,232,1) 50%, rgba(201,217,239,1) 100%);
    background: url("../images/main_bg.webp") calc(50% + 290px) top no-repeat
        ,linear-gradient(rgba(251,253,253,1) 0%, rgba(198,229,232,1) 50%, rgba(201,217,239,1) 100%);
    height: calc(100vh - 90px);
    min-height: 892px;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
}
#main_visual .main_txt {
    margin: auto;
    width: 1200px;
    padding: 4px 121px 0;
    color: #314B99;
    font-size: 42px;
    letter-spacing: 2.25px;
}
#main_visual .main_txt,
#main_visual .main_txt span {
    line-height: 1.45;
}
#main_visual .main_txt span.color {
    color: #E25174;
}
#main_visual .main_txt span.margin {
    margin-left: 45px;
}
#main_visual .main_txt span.trans {
    display: inline-block;
    transform: rotate(16deg);
}
#main_visual .main_img {
    margin: auto;
    width: 1200px;
    padding: 0 110px;
    line-height: 0;
}
#main_visual .main_img img {
    vertical-align: bottom;
}
#main_visual .bottom_txt {
    background-color: #426CAE;
    text-align: center;
    padding: 24px 10px 13px;
}
#main_visual .bottom_txt img {
    max-width: 616px;
}
#cnt01 {
    background-color: #DAF2F4;
    text-align: center;
    padding: 128px 0 0;
}
#cnt01 h2 {
    background: none;
    color: #EB5500;
    box-shadow: none;
    font-size: 46px;
    letter-spacing: 2.8px;
    margin: 0 0 40px;
    padding: 0;
}
#cnt01 p {
    color: #314B99;
    letter-spacing: 2.25px;
    font-size: 34px;
    line-height: 2.05;
    margin: 0 0 36px;
}
#cnt01 #cnt_answer::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 60px solid transparent;
    border-left: 60px solid transparent;
    border-top: 40px solid #DAF2F4;
    border-bottom: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#cnt01 p .font {
    font-size: 40px;
    letter-spacing: 2.75px;
}
#cnt01 p .font_s {
    display: inline-block;
    vertical-align: middle;
    font-size: 28px;
}
#cnt01 p .color {
    color: #E25174;
}
#cnt01 .line {
    line-height: 1.9;
    margin-bottom: 136px;
    text-indent: 45px;
    letter-spacing: 3.15px;
}
#cnt01 .line .txt {
    display: inline-block;
    text-indent: 45px;
    letter-spacing: 2.25px;
}
#cnt01 #cnt_answer {
    background: url("../images/cnt01_bg_l.webp") calc(50% - 422px) 175px no-repeat,url("../images/cnt01_bg_r.webp") calc(50% + 426px) 175px no-repeat;
    background-color: #FFFFFF;
    margin: 0;
    padding: 264px 0 261px;
    font-size: 34px;
    letter-spacing: 5.5px;
    position: relative;
    line-height: 2.95;
}
#cnt01 #cnt_answer span {
    display: inline-block;
    color: #E25174;
    border-bottom: 4px dotted #E25174;
    font-size: 40px;
    line-height: 1.4;
    letter-spacing: 4.5px;
}
#cnt02 {
    background: #DAF2F4;
    padding: 0 0 222px;
}
#cnt02 .cnt_box {
    width: 1200px;
    display: flex;
    margin: 91px auto 0;
    padding: 0 98px 0 150px;
}
#cnt02 ul {
    list-style: none;
    padding: 38px 0 0;
}
#cnt02 ul li {
    margin: 0 0 88px;
    padding: 0 0 10px 44px;
    background: url("../images/list_icon.svg") left 6px/30px auto no-repeat;
    font-size: 29px;
    letter-spacing: 2.1px;
    line-height: 1.625;
}
#cnt02 ul li span {
    display: inline-block;
    color: #314B99;
    font-size: 34px;
    vertical-align: middle;
    line-height: 1.2;
    background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 50%,rgba(255,240,0,1) 51%,rgba(255,240,0,1) 100%);
}
#cnt02 ul li img {
    margin: 29px 0 0;
}
#cnt03 {
    padding: 0 0 206px;
}
#cnt03 .cnt_box {
    width: 1200px;
    margin: 0 auto;
    padding: 127px 100px 190px 450px;
    background: url("../images/cnt03_txt_bg.webp") 155px 80px no-repeat;
}
#cnt03 .cnt_txt {
    font-size: 26px;
    letter-spacing: 0.75px;
    line-height: 1.725;
    margin: 0 0 31px 186px;
}
#cnt03 .box01,
#cnt03 .box02 {
    max-width: 1000px;
    margin: 0 auto 154px;
    padding: 20px 20px 57px;
    text-align: left;
    min-height: 358px;
    border-radius: 50px;
}
#cnt03 .box01 {
    border: 4px solid #E25174;
}
#cnt03 .box02 {
    border: 4px solid #314B99;
    margin-bottom: 91px;
}
#cnt03 .box01 h3,
#cnt03 .box02 h3 {
    margin: -54px 50px 61px;
    padding: 9px 10px 6px 70px;
    font-size: 37px;
    letter-spacing: 10.25px;
}
#cnt03 .box01 h3 {
    background-color: #E25174;
}
#cnt03 .box02 h3 {
    margin-bottom: 41px;
}
#cnt03 .col {
    display: flex;
    justify-content: center;
}
#cnt03 .box01 .col {
    gap: 42px;
    margin: 0 0 20px;
}
#cnt03 .box01 .col .col_box {
    width: 420px;
}
#cnt03 .box02 .col {
    gap: 15px;
}
#cnt03 .box02 .col .col_box.center {
    padding: 67px 0;
}
#cnt03 h4 {
    font-size: 35px;
    letter-spacing: 3.5px;
}
#cnt03 .box01 h4 {
    color: #E25174;
    text-align: center;
    margin: 0 0 2px;
}
#cnt03 .box01 p,
#cnt03 .box02 p {
    font-size: 26px;
    letter-spacing: 1px;
    line-height: 1.55;
    margin: 0 0 12px;
    text-align: center;
}
#cnt03 .box01 p {
    font-size: 30px;
    letter-spacing: 1.25px;
}
#cnt03 .box02 p {
    line-height: 1.45;
}
#cnt03 .box02 .col_box:nth-child(3n+1) p.txt {
    padding-left: 52px;
}
#cnt03 .box02 .col_box:nth-child(3n) p.txt {
    padding-right: 40px;
}
#cnt03 .box02 .col_box:nth-child(3n+1) p.txt + p {
    text-align: right;
    padding-right: 7px;
}
#cnt03 .box02 .col_box:nth-child(3n) p.txt + p {
    text-align: left;
    padding-left: 10px;
}
#cnt03 .box01 p span,
#cnt03 .box02 p span {
    color: #E25174;
}
#cnt03 .box02 p span {
    font-size: 30px;
}

#cnt04 {
    padding-bottom: 134px;
}
#cnt04 h2 {
    margin-bottom: 120px;
}
#cnt04 .youtube {
    margin-bottom: 100px;
}
#cnt04 .youtube_wrap,
#cnt04 .youtube iframe {
    height: 559px;
}
#cnt05 {
    padding: 0 0 138px;
    position: relative;
}
#cnt05::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(to right,  #426CAE 0%,#47BCC6 100%);
}
#cnt05 h2 {
    text-indent: 2px;
    margin-bottom: 80px;
}
#cnt05 h2 img {
    max-width: 224px;
}
#cnt05 .line_box {
    max-width: 1000px;
    margin: 139px auto 80px;
    border-radius: 48px;
}
#cnt05 .line_box h3 {
    margin: 0;
    padding: 0;
    text-indent: 0;
    background: none;
}
#cnt05 .line_box ul {
    list-style: none;
    font-size: 20px;
}
#cnt05 .line_box ul li {
    line-height: 1.5;
    letter-spacing: 1.05px;
    margin: 0 0 5px;
    padding-left: 20px;
    position: relative;
}
#cnt05 .line_box ul li::before {
    content: "";
    display: block;
    width: 17px;
    height: 17px;
    border-radius: 20px;
    background-color: #426CAE;
    position: absolute;
    top: 6px;
    left: 0;
}
#cnt05 .line_box .link_box.link01 {
    background: #3C96AA;
}
#cnt05 .line_box .link_box.link02 {
    background: #C84768;
}
#cnt05 .line_box .link_box {
    width: 160px;
    padding: 5px;
    box-sizing: border-box;
    margin: 0 auto;
}
#cnt05 .line_box .link_box a,
#cnt05 .line_box .link_box span {
    display: block;
    border: 1px solid #FFFFFF;
    text-align: center;
    padding: 14px 5px 2px;
}
#cnt05 .line_box .link_box span {
	color: #FFFFFF;
	font-size: 0.875rem;
	padding: 14px 5px 12px;
}
#cnt05 .line_box .link_box img {
    max-width: 127px;
}
#cnt05 .line_box .box_cnt {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 43px;
    padding: 83px 56px 81px;
}
#cnt05 .line_box .box_cnt .cnt01 {
}
#cnt05 .line_box .box_cnt .cnt02 {
    display: flex;
    gap: 32px;
}
#cnt05 .line_box .box_cnt .item_img {
    line-height: 0;
}
#cnt05 .line_box .box_cnt .item_color {
    color: #FFFFFF;
    text-align: center;
    border-radius: 50px;
    font-size: 0.75rem;
    letter-spacing: 2px;
    text-indent: 3px;
    line-height: 1.55;
    margin: 0 auto 29px;
    max-width: 108px;
}
#cnt05 .line_box .box_cnt .color1 {
    background-color: #3C96AA;
}
#cnt05 .line_box .box_cnt .color2 {
    background-color: #C84768;
}

.btn_bnr{
    position: relative;
    max-width: 1330px;
    margin: 0 auto;
    width: 100%;
}
.btn_bnr a{
	position: absolute;
    right: 13px;
    bottom: 60px;
	border-radius: 100%;
	line-height: 0;
	overflow: hidden;
    box-shadow: 0 0 10px 0 rgb(0 0 0 / 50%);	
}