@charset "utf-8";
@media (max-width:1024px){





/*COMMON*/
.display_pc { display:none !important; }
.display_sp { display:inline-block !important; }





/*LOAD*/
#load {
	min-width:auto;
}
.load_logo {
    height:60px;
}





/*BACK*/
#back {
	min-width:auto;
}
.back_image > div:nth-child(1) {
	background-size:1000px 1000px;
}




 
/*FRONT*/
#front {
	min-width:auto;
	overflow-x:hidden;
	overflow-y:auto;
	scrollbar-width:none;
	overscroll-behavior:contain;
    background-color:rgba(255,255,255,1);
	opacity:0;
}
.front_inner {
    height:100%;
	min-height:640px;
	padding:80px 20px 0;
}
.front_block {
	position:relative;
	top:50%;
	transform:translateY(-50%);
	text-align:center;
}
.front_nav {
	width:180px;
	margin:0 auto;
    background-color:rgba(255,255,255,0);
	opacity:1;
}
.front_nav div a {
	display:block;
	width:100%;
	margin:40px 0 0;
	font-size:24px;
	line-height:24px;
}
.front_nav div > a:nth-child(1) {
	margin:0;
}
.front_nav div a::before,
.front_nav div > a:nth-last-child(1)::after {
	display:none;
}
.front_logo {
    width:300px;
    margin:60px auto 0;
    position:relative;
}
.front_logo a {
	user-select:none;
	pointer-events:none;
}
.front_logo a img {
    width:100%;
    height:auto;
}
.front_logo a p {
    margin:10px 0 0;
    font-size:16px;
    line-height:16px;
    font-weight:bold;
    text-align:center;
}
.front_on .front_nav {
    user-select:none;
    pointer-events:none;
}
.front_on .front_nav div {
    user-select:none;
    pointer-events:none;
}
.front_on .front_nav div a {
    user-select:none;
    pointer-events:none;
}
.menu_on #front {
    user-select:auto;
    pointer-events:auto;
}
.menu_on .front_nav {
	user-select:auto;
	pointer-events:auto;
}
.menu_on .front_nav div {
	user-select:auto;
	pointer-events:auto;
}
.menu_on .front_nav div a {
	user-select:auto;
	pointer-events:auto;
}
.menu_on .front_logo a {
    user-select:auto;
    pointer-events:auto;
}





/*BANNER*/
#banner {
	min-width:auto;
}
.banner_image {
	width:calc(100% - 40px);
	bottom:20px;
	right:20px;
}





/*HEADER*/
header {
	min-width:auto;
	height:80px;
	padding:10px 20px;
}
.header_tel {
	top:calc(50% - 25px);
	right:100%;
    transform:translateX(100%);
}
.header_tel a img {
	height:24px;
    margin:0 3px 0 0;
}
.header_tel a > p:nth-child(2) {
	font-size:28px;
	line-height:28px;
}
.header_tel a > p:nth-child(3) {
	margin:6px 0 0;
	font-size:16px;
	line-height:16px;
}
.header_tel a > p:nth-child(3) span {
	height:16px;
	margin:0 6px;
}
.header_line {
	bottom:-10px;
}
.header_button {
    width:50px;
    height:50px;
	position:absolute;
    top:calc(50% - 25px);
    right:0;
}
.header_button a {
    display:block;
    width:100%;
    height:100%;
	position:relative;
    border-radius:10px;
    background-image:url(../img/back5d.jpg);
    background-size:100% 100%;
    background-position:center;
    background-repeat:no-repeat;
}
.header_button a div {
    width:30px;
    height:1px;
	position:absolute;
    top:50%;
    left:10px;
    background-color:rgba(255,255,255,1);
}
.header_button a > div:nth-child(1) {
    transform:translateY(-10px);
}
.header_button a > div:nth-child(3) {
    transform:translateY(10px);
}
.header_on header,
.header_off header {
	position:fixed;
    background-color:rgba(255,255,255,1);
}
.header_on .header_line,
.header_off .header_line {
	opacity:0;
}





/*FOOTER*/
footer {
	min-width:auto;
    height:auto;
    padding:40px 20px;
}
.footer_inner {
    height:auto;
}
.footer_block {
    height:auto;
}
.footer_logo {
    width:300px;
    margin:0 auto;
    position:relative;
}
.footer_logo a img {
    width:100%;
    height:auto;
}
.footer_logo a p {
    margin:10px 0 0;
    font-size:16px;
    line-height:16px;
    font-weight:bold;
    text-align:center;
}
.footer_nav {
    margin:40px 0 0;
	position:relative;
	top:0;
	text-align:center;
    border-width:1px 0;
    border-style:solid;
    border-color:rgba(0,0,0,1);
}
.footer_nav a,
.footer_nav span {
	display:block;
}
.footer_nav a {
	line-height:50px;
}
.footer_nav span {
    width:100%;
    height:1px;
    margin:0;
}
.footer_copyright {
    margin:40px 0 0;
	position:relative;
	text-align:center;
}
.footer_copyright p {
	font-size:12px;
	line-height:12px;
}
.footer_copyright p a {
    display:block;
    margin:0 0 40px;
	font-size:16px;
	line-height:16px;
}





/*MAIN*/
main {
	min-width:auto;
}





/*SECTION*/
section {
	margin:-80px 0 0;
	padding:120px 20px 40px;
}
.section_inner {
	max-width:none;
}
.section_block {
	margin:40px 0 0;
}
.section_title img {
	width:30px;
}
.section_title p,
.section_title h2 {
	margin:10px 0 0;
}
.section_title p {
	font-size:20px;
	line-height:20px;
}
.section_title h2 {
	font-size:28px;
	line-height:28px;
}
.section_text {
	width:100%;
	max-width:none;
	margin:30px auto 0;
}
.section_text p {
	font-size:16px;
	line-height:32px;
}
.section_image {
	aspect-ratio:8 / 5;
	overflow:hidden;
}
.section_image img {
	display:block;
	height:100%;
	object-fit:cover;
	object-position:center;
}
.section_list div {
	display:block;
	width:100%;
	margin:40px 0 0;
}
.section_list div > p:nth-child(1) {
	font-size:24px;
	line-height:50px;    
}
.section_list div > p:nth-child(1) span {
	width:24px;
	height:24px;
	font-size:16px;
	line-height:16px;
}
.section_list div > p:nth-child(2) {
	font-size:24px;
	line-height:36px;
}
.section_list div img {
    width:240px;
}
.section_list div > p:nth-child(4) {
	font-size:16px;
	line-height:32px;
}
.section_list div a {
    width:240px;
    border-radius:25px;
    font-size:20px;
	line-height:50px;
}





/*CTA*/
.cta {
    padding:40px 0 50px;
}
.main_block > .cta:nth-last-child(1) {
    padding-bottom:90px;
}
.cta_text p {
	font-size:24px;
	line-height:42px;
}
.cta_nav {
	margin:30px 0 0;
}
.cta_nav div {
	display:block;
	width:100%;
}
.cta_nav > div:nth-child(2) {
	margin:40px 0 0;
	border-left:none;
}
.cta_nav div > p:nth-child(3) {
	font-size:16px;
	line-height:16px;
}
.cta_nav div > p:nth-child(3) span {
    height:16px;
    margin:0 6px;
}
.cta_nav div a {
	margin:15px 0 0;
}


.cta_nav div a {
    width:240px;
    border-radius:25px;
    font-size:20px;
	line-height:50px;
}



.cta_top {
	width:50px;
	height:50px;
	bottom:-70px;
	right:20px;
}





/*VISUAL*/
#visual {
	height:auto;
    padding:120px 0 0 0;
}
#visual .section_inner {
	height:auto;
}
#visual .section_block {
	position:relative;
}
#visual .section_inner > .section_block:nth-child(2) {
	width:100%;
	top:0;
	left:0;
    margin:40px 0 0;
}
#visual .section_inner > .section_block:nth-child(3) {
	width:500px;
    margin:-80px 0 0;
    top:0;
    left:calc(50% - 250px);
}
#visual .section_inner > .section_block:nth-child(4) {
    height:auto;
    margin:-60px 0 0;
}
.visual_logo {
    width:300px;
    margin:0 auto;
}
.visual_logo p {
    margin:10px 0 0;
	font-size:16px;
	line-height:16px;
    font-weight:bold;
    text-align:center;
}
.visual_title {
    width:320px;
    margin:0 auto;
}
.visual_title > p:nth-child(1) {
	padding:0 0 10px;
	font-size:20px;
	line-height:20px;
}
.visual_title h1 {
	margin:12px 0 0;
	font-size:50px;
	line-height:50px;
}
.visual_title h1 span {
	margin:10px 0 0;
	font-size:54px;
	line-height:54px;
}
.visual_title > p:nth-child(3) {
	margin:12px 0 0;
	padding:10px 0;
	font-size:16px;
	line-height:16px;
}
.visual_title > p:nth-child(3) span {
	font-size:20px;
	line-height:20px;
}
.visual_title > p:nth-child(4) {
    display:inline-block;
    vertical-align:middle;
    width:auto;
    margin:15px 0 0;
    position:relative;
    left:50%;
    transform:translateX(-50%);
	font-size:14px;
	line-height:14px;
}
.visual_stamp {
	width:150px;
	bottom:calc(50% - 170px);
	right:calc(50% - 190px);
}
.visual_stamp p {
	top:calc(50% - 30px);
	font-size:24px;
	line-height:30px;
}
.visual_nav div a {
	width:50%;
	font-size:20px;
	line-height:50px;
    border-width:1px 0 0 1px;
    border-style:solid;
    border-color:rgba(255,255,255,1);
}
.visual_nav div > a:nth-child(1),
.visual_nav div > a:nth-child(2) {
    border-top-width:0;
}
.visual_nav div > a:nth-child(odd) {
    border-left-width:0;
}
.visual_nav div a::before,
.visual_nav div a::after,
.visual_nav div > a:nth-last-child(1)::after {
    display:none;
}





/*INTRO*/
#intro {
	margin-top:0;
	padding-top:40px;
	overflow:hidden;
}
#intro .section_inner > .section_block:nth-child(1) {
	width:500px;
    margin:-100px 0 0;
    position:relative; 
    top:0;
    left:calc(50% - 250px);
}
#intro .section_inner > .section_block:nth-child(2) {
    margin:-80px 0 0;
	padding:0;
}
#intro .section_inner > .section_block:nth-child(3) {
	bottom:-40px;
}
.intro_text > p:nth-child(1) {
	font-size:24px;
	line-height:42px;
    text-align:center;
}
.intro_text > p:nth-child(2) {
	font-size:24px;
	line-height:24px;
    text-align:center;
}
.intro_text > p:nth-child(2) span {
    display:block;
	margin:0 0 10px;
	font-size:16px;
	line-height:16px;
}
.intro_text > p:nth-child(3) {
	margin:30px 0 0;
	font-size:16px;
	line-height:32px;
}




          
/*GROUP*/
.group {
}
.group .section_inner > .section_block:nth-child(2) {
	bottom:-40px;
}
.group_title {
	max-width:290px;
}
.group_title p {
    font-size:24px;
    line-height:24px;
}
.group_title div {
	margin:10px 0;
}
.group_list {
	margin:40px 0 0;
}
.group_list div {
    width:100%;
    margin:40px 0 0;
}
.group_list div img {
	width:230px;
	margin:0 auto;
}
.group_list div a {
    width:240px;
    margin:20px auto 0;
    border-radius:25px;
    font-size:20px;
    line-height:50px;
}





/*MISTAKE*/
#mistake {
}
.mistake_comment {
	padding:20px;
}
.mistake_comment p {
	font-size:20px;
	line-height:40px;
    text-align:justify;
}





/*BASIC*/
#basic {
}
.basic_title {
    padding:10px 0;
}
.basic_title p {
	font-size:24px;
	line-height:36px;
}
.basic_title p span {
	width:24px;
	height:24px;
	font-size:16px;
	line-height:16px;
}
.basic_copy {
	margin:30px 0 0;
}
.basic_copy h3 {
	font-size:24px;
	line-height:36px;
}
.basic_text {
	max-width:none;
	margin:30px auto 0;
}
.basic_text p {
    font-size:16px;
    line-height:32px;
}





/*POINT*/
#point {
}
#point1,
#point2,
#point3,
#point4 {
	margin:-80px 0 0;
	padding:120px 0 0;
}
.point_title p {
	font-size:24px;
	line-height:50px;
}
.point_title p span {
	width:24px;
	height:24px;
	font-size:16px;
	line-height:16px;
}
.point_copy {
	margin:30px 0 0;
}
.point_copy h3 {
	font-size:24px;
	line-height:36px;
}
.point_text {
	max-width:none;
	margin:30px auto 0;
}
.point_text p {
    font-size:16px;
    line-height:32px;
}
#point1 .point_important {
	margin:30px 0 0;
}
#point1 .point_important > p:nth-child(1) {
	font-size:24px;
	line-height:24px;
}
#point1 .point_important > p:nth-child(2) {
	font-size:20px;
	line-height:20px;
}
#point1 .point_important > p:nth-child(2) > span:nth-child(1),
#point1 .point_important > p:nth-child(2) > span:nth-child(3) {
	font-size:30px;
	line-height:30px;
}
#point1 .point_important > p:nth-child(2) > img:nth-child(2){
	display:block;
	width:30px;
	margin:10px auto;
}
#point1 .point_important > p:nth-child(2) > img:nth-child(4) {
	margin:8px 10px 0;
}
#point1 .point_important > p:nth-child(3),
#point1 .point_important > p:nth-child(4) {
	font-size:20px;
	line-height:30px;
}
#point1 .point_important > p:nth-child(3) {
	padding:15px 0;
}
#point1 .point_important > p:nth-child(4) {
	margin:15px 0 0;
}
#point1 .point_important > p:nth-child(5) {
	margin:20px 0 15px;
	font-size:14px;
	line-height:14px;
}
#point3 .point_important {
	margin:30px 0 0;
}
#point3 .point_important > div:nth-child(1) p {
	font-size:16px;
	line-height:16px;
}
#point3 .point_important > div:nth-child(2) {
	margin:20px 0 0;
}
#point3 .point_important > div:nth-child(2) div {
	display:block;
}
#point3 .point_important > div:nth-child(2) > div:nth-child(1) {
	width:100%;
    padding:0 0 20px;
	border-right:none;
	border-bottom:1px dotted rgba(200,25,25,1);
}
#point3 .point_important > div:nth-child(2) > div:nth-child(2) {
	width:100%;
    padding:20px 0 0;
}
#point3 .point_important > div:nth-child(2) div > p:nth-child(1),
#point3 .point_important > div:nth-child(2) div > p:nth-child(2) {
	font-size:16px;
	line-height:16px;
}
#point3 .point_important > div:nth-child(2) div > p:nth-child(2) {
	margin:10px 0 0;
}
#point3 .point_important > div:nth-child(2) div > p:nth-child(2) span {
	font-size:24px;
	line-height:24px;
}
#point5 .point_important {
	margin:20px 0 0;
}
#point5 .point_important p {
	display:block;
}
#point5 .point_important > p:nth-child(1) {
	width:100%;
	padding:0 0 20px;
	font-size:24px;
	line-height:24px;
}
#point5 .point_important > p:nth-child(2) {
	width:100%;
	padding:20px 0 0;
	font-size:16px;
	line-height:32px;
    border-left:none;
    border-top:1px dotted rgba(255,255,255,1);
}





/*FLOW*/
#flow {
}
.flow_diagram {
	display:block;
}
.flow_diagram::before {
	width:1px;
	height:100%;
	top:0;
	left:50%;
}
.flow_diagram div {
	display:block;
	width:100%;
	height:auto;
	margin:20px 0 0;
	padding:10px 0;
    position:relative;
}
.flow_diagram > div:nth-child(1) {
	margin:0;
}
.flow_diagram > div:nth-child(3) {
	width:100%;
}
.flow_diagram > div:nth-child(1),
.flow_diagram > div:nth-child(9) {
    background-image:url(../img/back2l.jpg);
}
.flow_diagram > div:nth-child(10) {
    background-image:url(../img/back2r.jpg);
}
.flow_diagram div p,
.flow_diagram div p span {
	font-size:20px;
	line-height:30px;
}
.flow_diagram div p {
    display:inline-block;
    vertical-align:middle;
}
.flow_diagram div > p:nth-child(1) {
    width:60px;
	line-height:30px;
    text-align:center;
	border-bottom:none;
	border-right:1px dotted rgba(100,50,0,1);
}
.flow_diagram div > p:nth-child(2) {
    width:calc(100% - 60px);
	height:auto;
	line-height:30px;
	writing-mode:horizontal-tb;
}
.flow_diagram div > p:nth-child(2) span {
	left:0;
	line-height:30px;
}
.flow_diagram > div:nth-child(1) > p:nth-child(1),
.flow_diagram > div:nth-child(9) > p:nth-child(1),
.flow_diagram > div:nth-child(10) > p:nth-child(1) {
	border-bottom:none;
	border-right:1px dotted rgba(255,255,255,1);
}
.flow_important > p:nth-child(1) {
    font-size:20px;
    line-height:20px;
}
.flow_important > p:nth-child(2) {
	margin:10px 0 0;
    font-size:20px;
    line-height:40px;
}
.flow_important > p:nth-child(2) span {
    height:20px;
    margin:10px 10px;
}
.flow_important > p:nth-child(3) {
	margin:10px 0 0;
    font-size:14px;
    line-height:28px;
}





/*FEATURE*/
#feature {
}
#feature .section_inner > .section_block:nth-child(4) {
    bottom:-40px;
}
#feature .section_title h2 {
    font-size:20px;
    line-height:40px;
}
#feature .section_title h2 span {
    font-size:28px;
}
#feature .section_title > p:nth-child(4) {
    font-size:14px;
}
.feature_important img {
	display:block;
	vertical-align:middle;
	width:300px;
	margin:40px auto 0;
}
.feature_important > img:nth-child(1) {
	margin:0 auto;
}





/*CONTACT*/
#contact {
}
#contact .section_inner > .section_block:nth-child(3) {
    bottom:-40px;
}
.contact_tel {
	margin:20px 0 0;
}
.contact_tel a img {
	height:36px;
}
.contact_tel a > p:nth-child(2) {
	font-size:40px;
	line-height:40px;
}
.contact_tel a > p:nth-child(3) {
	margin:10px 0 0;
	font-size:16px;
	line-height:16px;
}
.contact_tel a > p:nth-child(3) span {
	height:16px;
    margin:0 6px;
}





/*ACCESS*/
#access {
}
.access_list div {
	display:block;
	width:100%;
}
.access_list > div:nth-child(2n) {
	margin:40px 0 0;
}
.access_list div h3 {
	font-size:20px;
	line-height:20px;
}
.access_list div h3 span {
	height:20px;
}
.access_list div div {
	aspect-ratio:1 / 1;
	margin:30px 0 0;
}
.access_list div p {
	font-size:16px;
	line-height:32px;
}





/*FORM*/
form {
	max-width:none;
}
dd {
	margin:0 0 30px;
}
dl > dd:nth-child(12),
dl > dd:nth-child(13),
dl > dd:nth-child(15),
dl > dd:nth-child(16),
dl > dd:nth-child(18),
dl > dd:nth-child(19) {
	display:block;
	width:100%;
}
dl > dd:nth-child(12),
dl > dd:nth-child(15),
dl > dd:nth-child(18) {
	margin-bottom:10px;
}
dl > dd:nth-child(13),
dl > dd:nth-child(16),
dl > dd:nth-child(19) {
	margin-left:0;
}
label {
	margin:0 0 10px;
	font-size:16px;
	line-height:16px;
}
input:not([type=radio]):not([type=checkbox]),
textarea,
select {
	padding:10px 15px;
	font-size:16px;
	line-height:32px;
}
.select::after {
	width:16px;
	height:16px;
	top:calc(50% - 8px);
	right:15px;
}
.required {
	margin:0 0 0 5px;
	font-size:16px;
	line-height:16px;
}
.error {
	padding:10px 15px;
	margin:40px 0 40px;
 	font-size:16px;
 	line-height:32px;
}
.submit {
	margin:40px 0 0;
}
.submit button[type=submit] {
	width:240px;
	font-size:20px;
	line-height:50px;
	border-radius:25px;
}





/*CONFIRM*/
#confirm {
  margin:0;
  padding:80px 20px;
}
#confirm .section_text {
    margin:30px auto 0;
}
#confirm .section_text p {
  font-size:20px;
  line-height:40px;
}
.confirm_form {
  max-width:none;
  margin:30px auto 0;
}
.confirm_form form > div:nth-child(6),
.confirm_form form > div:nth-child(7),
.confirm_form form > div:nth-child(8),
.confirm_form form > div:nth-child(9),
.confirm_form form > div:nth-child(10),
.confirm_form form > div:nth-child(11) {
	display:block;
	width:100%;
}
.confirm_form form > div:nth-child(7),
.confirm_form form > div:nth-child(9),
.confirm_form form > div:nth-child(11) {
	margin-left:0;
}
.value {
  font-size:16x;
  line-height:32px;
  padding:10px 15px;
  margin:0 0 30px;
}
.confirm_form form > div:nth-child(6) .value,
.confirm_form form > div:nth-child(8) .value,
.confirm_form form > div:nth-child(10) .value {
	margin-bottom:10px;
}
.submit a {
  display:block;
  width:240px;
  margin:0 auto 40px;
  font-size:20px;
  line-height:48px;
  border-radius:25px;
}





/*THANKS*/
#thanks {
}
#thanks .section_title h2 {
	line-height:42px;
}
#thanks .section_text {
    margin:20px auto 0;
}
.thanks_button {
 	margin:30px 0 0;
}
.thanks_button a {
	width:240px;
 	font-size:20px;
 	line-height:50px;
 	border-radius:25px;
}





}