

* {
margin: 0;
padding: 0;
}
html{
margin:0px;
padding:0px;
}
body{
background:#ffffff;
text-align:center;
color:#333;
font-size: 16px;
line-height:2;
font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
img{
border-style:none;
display:block;
padding:0px 0px 0px 0px;
margin:0px 0px 0px 0px;
}

a {
cursor:pointer;
color:#333;
text-decoration:none;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
a:hover, a:focus {
text-decoration: none;
color:#ddd;
}

li{list-style:none;}


.box_in{
width:90%;
padding:100px 0 100px 0;
margin: 0px auto;
text-align: left;
}

.box_in_x{
width:90%;
padding:100px 0 100px 0;
margin: 0px auto;
text-align: left;
}

.box_in_t{
width:90%;
padding:120px 0 100px 0;
margin: 0px auto;
text-align: left;
}

.bg_edecfa{background-color: #edecfa;}

.bg_pink{
background-image: url(../images/bg_pink.jpg);
background-position:center center;
background-repeat: no-repeat;
background-size:cover;
width:100%;
}
.bg_bule{
background-image: url(../images/bg_bule.jpg);
background-position:center center;
background-repeat: no-repeat;
background-size:cover;
width:100%;
}



/* ここから下がハンバーガーメニューに関するCSS */

/* チェックボックスを非表示にする */
.drawer_hidden {
display: none;
}

/* ハンバーガーアイコン */
.drawer_open {
display: flex;
height: 60px;
width: 60px;
justify-content: center;
align-items: center;
position: relative;
z-index: 100;
cursor: pointer;
}

/* span本体は“線”にしない（=常に透明） */
.drawer_open span {
position: relative;
display: block;
width: 25px;
height: 1px;            /* ダミーの高さ */
background: transparent; /* ←ここを透明に */
}

/* 上下2本だけを使う */
.drawer_open span::before,
.drawer_open span::after {
content: '';
position: absolute;
left: 0;
width: 25px;
height: 1px;
border-radius: 3px;
background: #000;
transition: transform .5s, top .5s, bottom .5s, opacity .5s;
}

/* 初期位置（2本） */
.drawer_open span::before { bottom: 4px; }
.drawer_open span::after  { top: 4px;  }

/* チェック時：中央に寄せて交差回転（×） */
#drawer_input:checked ~ .drawer_open span::before {
bottom: 0;
transform: rotate(45deg);
}
#drawer_input:checked ~ .drawer_open span::after {
top: 0;
transform: rotate(-45deg);
}

/* （もし残っていれば）中線を消すための既存ルールは残してOK */
#drawer_input:checked ~ .drawer_open span {
background: rgba(255,255,255,0);
}


/* メニューのデザイン */
.nav_content {
width: 100%;
height: 100%;
position: fixed;
top: 0px;
left: 0;                  /* ← 常に0に固定（スライドしない） */
z-index: 99;
background: #edecfa;
opacity: 0;               /* ← 最初は非表示 */
transform: translateY(8px); /* ← ほんの少し下から */
pointer-events: none;     /* ← クリック無効 */
transition: opacity .35s ease, transform .35s ease;
display: flex;
justify-content: center; /* 水平方向 */
align-items: center;     /* 垂直方向 */
}

/* 表示（フェードイン） */
#drawer_input:checked ~ .nav_content {
opacity: 1;
transform: translateY(0);
pointer-events: auto;     /* ← クリック可能に */
}

.nav_content_in{
width:30%;
margin: 0 auto;
}

.nav_logo{
width:100%;
}
.nav_logo img{width:40%;margin: 0 auto;}

/* メニュー黒ポチを消す */
.nav_list {
width: 100%;
margin:20px auto;
list-style: none;
}

.nav_list li{
border-bottom:1px solid #999;
color:#fff;
font-size:16px;
font-weight: 600;
text-align:center;
margin:0 0 0px 0;

letter-spacing:3px;
}
.nav_list li:last-child{border-bottom:none;}
.nav_list li a{color:#000;display: block;padding:25px 0 25px 0;}

/* ---nav_cv_area---*/

.nav_cv_area{
width:100%;
text-align: center;
margin:0px auto 0 auto;
}

.nav_cv_area p{
font-size: 14px;
letter-spacing: 1px;
}
.nav_cv_area p span{
font-size: 20px;
font-weight: 400;
}
.nav_cv_area img{
width: 8%;
margin: 0 0 0 10px;
}

.nav_cv_area_in01{
padding:20px 0;
width:100%;
color:#fff;
border-radius:15px;
background-image: -moz-linear-gradient( -90deg, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
background-image: -webkit-linear-gradient( -90deg, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
background-image: -ms-linear-gradient( -90deg, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
/* 現行仕様 */
background-image: linear-gradient( to bottom, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
display: flex;
align-items:center;
justify-content:center;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.nav_cv_area_in01:hover{
opacity:.7;
color:#fff;
}

.nav_cv_area_in02{
margin: 15px 0 0 0;
padding:20px 0;
width:100%;
color:#fff;
border-radius:15px;
background-image: -moz-linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
background-image: -webkit-linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
background-image: -ms-linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
/* 現行仕様（併記推奨） */
background-image: linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
display: flex;
align-items:center;
justify-content:center;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.nav_cv_area_in02:hover{
opacity:.7;
color:#fff;
}


/* ---Header----*/


.header_in{
background-image: url(../images/mv_bg.jpg);
background-position:center center;
background-repeat: no-repeat;
background-size:cover;
width:100%;
max-height: 90vh;
}
.header_in_low{
background-image: url(../images/mv_none_bg.jpg);
background-position:center center;
background-repeat: no-repeat;
background-size:cover;
width:100%;
}

.header_top{
width:92%;
margin: 0px auto 0px auto;
display: flex;
align-items: center;
justify-content: space-between;
}

.header_top_low{
width:100%;
margin: 0px auto 0px auto;
display: flex;
align-items: center;
justify-content: space-between;
}

.h_logo{
width:200px;
margin: 30px 0px 30px 0px;
}
.h_logo img{
width: 100%;
}

.s-fade-wrap{
width:100%;
overflow: hidden;
}

.s-fade-wrap_in{
width:86%;
margin:0 auto;
}
.mv_view_box01{
width:45%;
margin:0;
display: flex;
align-items: center;
padding:0% 0 0 0;
}

.mv_view01{width:80%; margin: 8% auto 0 auto;}
.mv_view01 img{width:100%;}

.mv_text{
width:45%;
text-align: left;
margin:2% 0 0 0;
}

.mv_text h1 p{
letter-spacing:2px;
font-size: 20px;
line-height:1.7;
font-weight:400;
text-align: center;
}
.mv_t_big{
background: linear-gradient(transparent 50%, #f9f5b2 0%);
font-size: 24px;
}
.mv_t_small{font-size: 18px;}


.mv_view_box02{
width:45%;
text-align: left;
margin:1% 0 0 0;
}
.mv_view_box02 img{width:90%;margin:0% auto 0 auto;}

.r_cv{
position:absolute;
right: 2%;
bottom:5%;
width:80px;
}
.r_cv img{
width: 100%;
}


@media screen and (max-width:1350px) { 
.mv_view01{width:90%; margin: 10% auto 0 auto;}
.mv_view01 img{width:100%;}
.mv_text h1 p{
letter-spacing:2px;
font-size: 17px;
line-height:1.7;
font-weight:400;
text-align:left;
margin: 0 0 10px 0;
}
.mv_t_big{
background: linear-gradient(transparent 50%, #f9f5b2 0%);
font-size: 22px;
}
.mv_t_small{font-size: 16px;}


.mv_view_box02{
width:45%;
text-align: left;
margin:1% 0 0 0;
}
.mv_view_box02 img{width:100%;margin:0% auto 0 auto;}
}

/* ---title---*/

.title_text_c {
width:100%;
margin:0px auto;
text-align: center;
}
.title_text_c h2 img{
height: 70px;
margin: 0 auto;
}
.title_text_c p{
letter-spacing: 2px;
font-size: 18px;
margin: 20px auto 0 auto;
}


/* ---cv_area---*/

.cv_area{
width:78%;
max-width: 1200px;
text-align: center;
display: flex;
align-items:center;
justify-content:space-between;
margin: 60px auto 0 auto;
}

@media screen and (max-width:1200px) { 
.cv_area{
width:100%;
max-width: 1200px;
text-align: center;
display: flex;
align-items:center;
justify-content:space-between;
margin: 60px auto 0 auto;
}
}

.cv_area p{
font-size: 16px;
letter-spacing: 1px;
}
.cv_area p span{
font-size: 24px;
font-weight: 400;
}
.cv_area img{
width: 8%;
margin: 0 0 0 10px;
}

.cv_area_in01{
padding: 40px 0;
width: 48%;
color:#fff;
border-radius:25px;
background-image: -moz-linear-gradient( -90deg, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
background-image: -webkit-linear-gradient( -90deg, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
background-image: -ms-linear-gradient( -90deg, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
/* 現行仕様 */
background-image: linear-gradient( to bottom, rgba(111,134,214,0.8) 0%, rgba(90,169,228,0.8) 100%);
display: flex;
align-items:center;
justify-content:center;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.cv_area_in01:hover{
opacity:.7;
color:#fff;
}

.cv_area_in02{
padding: 40px 0;
width: 48%;
color:#fff;
border-radius:25px;
background-image: -moz-linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
background-image: -webkit-linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
background-image: -ms-linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
/* 現行仕様（併記推奨） */
background-image: linear-gradient( -106deg, rgba(253, 83, 146, 0.8) 0%, rgba(248, 111, 100, 0.8) 100%);
display: flex;
align-items:center;
justify-content:center;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.cv_area_in02:hover{
opacity:.7;
color:#fff;
}



/* ---t_top---*/
.t_top{
width: 100%;
max-width: 1200px;
padding:20px 0px 0px 0px;
margin:0 auto;
text-align: center;
display: flex;
align-items:center;
justify-content:space-between;
}

.title_text_t{
width: 50%;
margin:0px;
text-align: center;
position: relative;
}
.title_text_t div{
position: absolute;
top:-80%;
left:0;
width: 20%;
}
.title_text_t div img{width:100%;}
.title_text_t h2 img{
height: 70px;
margin: 0 auto;
}
.title_text_t p{
font-size: 18px;
margin: 20px auto 0 auto;
}

.t_top_in{
width: 40%;
margin:0px auto;
text-align:left;
}

.t_top_in p{
letter-spacing: 2px;
font-size: 18px;
line-height: 2.2;
margin: 0 0 20px 0;
}
.t_top_in p span{
font-size: 14px;
color:#999;
}


/* ---t_one---*/
.t_one{
width: 100%;
max-width: 1200px;
padding:20px 0px 0px 0px;
margin:0 auto;
text-align: center;
}
.t_one p{
margin:0px 0 20px 0;
font-size: 20px;
font-weight:500;
line-height: 2;
letter-spacing:1px;
text-align:left;
}
.t_one p span{
font-size: 16px;
color:red;
}
.t_one h3{
display: inline-block;
letter-spacing:2px;
font-size:30px;
padding:20px 0px;
margin:0 auto;
line-height:2;
color:#ff6f00;
text-align:left;
font-weight:700;
}

.t_one_in01{
width:100%;
padding:0px 0px;
margin: 0px auto 0 auto;
}
.t_one_in01 img{
width: 100%;
margin:0px 0;
}

.t_one_in02 {
width:100%;
margin: 60px auto 0 auto;
}
.t_one_in02 p{
letter-spacing:2px;
font-size: 18px;
line-height:1.7;
font-weight:500;
text-align:center;
}



/* ---t_two---*/
.t_two{
width: 100%;
max-width: 1200px;
padding:0px 0px 0px 0px;
margin:0 auto;
}

.t_two_in{
display: flex;
align-items:top;
justify-content:space-between;
flex-wrap: wrap;
margin:0px 0 0 0;
}

.t_two_in_box{
width:48%;
position: relative;
background-color: #fff;
border-radius: 30px;
margin:70px 0 0px 0;
padding:3.5% 2.5%;
box-sizing: border-box;
}
.t_two_in_icon{
width:35%;
position: absolute;
top:-50px;
left:-30px;
}
.t_two_in_icon img{width:100%;}

.t_two_in_view{
width:100%;
overflow: hidden;
border-radius: 20px;
}
.t_two_in_view img{width:100%;}

.t_two_in_text{
display: flex;
align-items:center;
justify-content: center;
padding: 35px 0 0 0;
text-align: center;
}

.t_two_in_text h3{
color:#000;
letter-spacing:2px;
line-height: 1.5;
font-size: 18px;
font-weight: 400;
text-align: center;
margin: 0 auto;
}



/* ---t_six---*/
.t_six{
width: 100%;
max-width: 1200px;
padding:0px 0px 0px 0px;
margin:0 auto;
display: flex;
align-items:top;
justify-content:space-between;
flex-wrap: wrap;
}

.t_six_in{
width: 100%;
display: flex;
align-items:top;
justify-content:space-between;
flex-wrap: wrap;
}

.t_six_box{
width: 31%;
background-color: #edecfa;
border-radius:30px;
box-sizing: border-box;
margin:3% 0 0 0;
padding: 20px;
}
.t_six_box_in{
background-color: #f9f9fe;
border-radius:20px;
}
.t_six_box img{
width: 100%;
}
.t_six_box p{
font-size: 18px;
font-weight: 500;
text-align: center;
padding:10px 0 25px 0;
}

.t_six_text{
padding: 60px 0 0 0;
margin:0 auto;
letter-spacing: 2px;
}
.t_six_text p{
font-size: 18px;
text-align: center;
}
.t_six_text p span{
color:red;
font-size: 16px;
text-align: center;
}


/* ---t_three---*/
.t_three{
max-width: 1200px;
padding:40px 0px 0px 0px;
margin:0 auto;
}
.t_three_top_text{
text-align: center;
font-size:16px;
padding:0px 0px 30px 0px;
}
.t_three_in{
min-height: 300px;
padding:60px ;
margin: 10px 0 0px 0;
display: flex;
align-items:center;
justify-content: space-between;
box-sizing: border-box;
background-color: #fff;
border: 15px solid #e9f2fc;
border-radius: 500px;
}


.t_three_in_view{
width:20%;
}
.t_three_in_view img{width:60%;margin: 0 auto;}
.t_three_in_text{width:80%;}

.t_three_in_text img{
width:130px;
}
.t_three_in_text h3{
font-size: 24px;
line-height: 24px;
letter-spacing:1px;
font-weight:500;
margin:0px 0 20px 0; 
}
.t_three_in_text p{
font-size:16px;
letter-spacing:1px;
line-height:1.8;
margin: 15px 0 0 0;
}

.t_three_arrow{width:3%; margin:10px auto 0 auto;}
.t_three_arrow img{width: 100%;margin: 0 auto;}


/* ---t_four---*/
.t_four{
width: 100%;
max-width: 1200px;
padding:0px 0px 0px 0px;
margin:0 auto;
}
.t_four_in{
width:100%;
background-color: #f8f2f2;
margin: 50px 0 0px 0;
padding:30px;
position: relative;
border-radius: 30px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
}
.t_four_icon{
position: absolute;
width: 10%;
top:0px;
right: -20px;
}
.t_four_icon img{width: 100%;}
.t_four_view{
width: 35%;
overflow: hidden;
border-radius: 20px;
position: relative;
}
.t_four_view img{
position: absolute;        /* 親いっぱいに広げる */
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;         /* 縦横比維持＋全面カバー */
object-position: center;   /* 上下左右中央 */
display: block;
}

.t_four_text{
width: 62.5%;
padding: 40px;
box-sizing: border-box;
border-radius: 20px;
background-color: #ffffff;
}

.t_four_in_box{
width:100%;
margin:0px 0 0 0;
text-align: left;
}
.t_four_data01{
font-size: 13px;
line-height:13px;
letter-spacing:1px;
font-weight:400;
padding:10px; 
color: #fff;
text-align: left;
background-color: #96aae1;
border-radius:5px;
display: inline-block;
}
.t_four_data02{
font-size: 13px;
line-height:13px;
letter-spacing:1px;
font-weight:400;
padding:10px; 
color: #fff;
text-align: left;
background-color: #fbaec4;
border-radius:5px;
display: inline-block;
}
.t_four_in h3{
font-size: 24px;
line-height: 24px;
letter-spacing:1px;
font-weight:400;
padding:30px 0 20px 0; 
margin: 0 0 20px 0;
text-align: left;
border-bottom: 5px dotted #6891da;
}
.t_four_in_box p{
font-size: 16px;
line-height:1.7;
letter-spacing:1px;
padding:10px 0 0px 0;
}



/* ---t_five---*/
.t_five{
max-width: 950px;
padding:50px 0px;
margin:0 auto;
list-style:none;
}
.t_five dl+dl {
margin-top:30px;
}

.t_five 
dt,
dd {
padding: 20px;
}

.t_five dl {
position: relative;
overflow: hidden;
}

.t_five dl>input {
display: none;
}

.t_five dt {
position: relative;
z-index: 1;
padding-right:50px;
background: #96aae1;
color:#fff;
font-size: 20px;
font-weight:500;
letter-spacing: 2px;
}

.t_five dd {
position: absolute;
visibility: hidden;
transform: translateY(-100%);
transition: .4s;
background: #fff;
font-size: 16px;
font-weight:400;
letter-spacing: 2px;
}

.t_five dl>input:checked+label+dd {
position: relative;
visibility: visible;
transform: translateY(0);
}

.t_five dt::before {
content: '';
position: absolute;
width: 20px;
height: 3px;
top: 50%;
right: 30px;
background: #fff;
transform: translateY(-50%);
}

.t_five dt::after {
content: '';
position: absolute;
top: 50%;
right: 30px;
width: 20px;
height: 3px;
background: #fff;
transition: .4s;
transform: translateY(-50%) rotate(90deg);
}

.t_five dl>input:checked+label>dt::after {
transform: translateY(-50%) rotate(180deg);
}


/* ---form---*/

.form_top_text{
padding:40px 0px 25px 0px;
text-align:center;
font-size:18px;
letter-spacing:1px;
}


.form_box{
max-width: 950px;
margin:0 auto;
padding:20px 0px 0px 0px;
}
.form_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
}
.form_box th {
font-size:20px;
font-weight:600;
width: 30%;
padding:30px;
text-align: left;
vertical-align:top;
border-bottom: 2px solid #fdc89e;
}
.form_box th span{
background-color: red;
color:#fff;
font-size:14px;
border-radius:5px;
line-height:14px;
padding: 5px;
display: inline-block;
margin: 0 0 0 15px;
vertical-align: middle;
}
.form_box td  {
padding:30px 0px 30px 0px;
text-align: left;
vertical-align:top;
border-bottom: 2px solid #fdc89e;
}

.form_box td p{
padding:10px 0px 5px 0px;
margin:0px 0 0 0px;
}
.form_box p span{color:red;font-size:13px;}


/* ---service---*/
.service{
width:70%;
margin: 30px auto;
}

.service li{
display: flex;
align-items:center;
justify-content:space-between;
border-bottom: 1px solid #5aaf00;
padding:40px 0;
}
.service li:last-child{
border-bottom: none;
}

.service_box_right{width:100%;}
.service_box_right h3{
letter-spacing:1.5px;
font-size:24px;
font-weight:600;
color:#5aaf00;
}
.service_box_right p{
letter-spacing:1.5px;
font-size:16px;
font-weight:400;
}

/* ---company---*/

.company{
width: 70%;
margin:0 auto;
padding:50px 0px 0px 0px;
}

.company li{
display: flex;
align-items:center;
border-bottom: 1px solid #ccc;
padding:30px 0;
}
.company li:last-child{
border-bottom: none;
}
.company h3{
width: 30%;
font-weight: 500;
font-size: 18px;
}
.company p{
font-size: 16px;
}


/* ---pp---*/
.pp{
width: 70%;
margin:0 auto;
padding:50px 0px 0px 0px;
}
.pp h3{
padding:30px 0 10px 0;
font-weight: 500;
font-size: 18px;
}
.pp p{
font-size: 14px;
}


/* ---footer---*/


.footer{
width:100%;
background-image: url(../images/f_bg.jpg);
background-position:center center;
background-repeat: no-repeat;
background-size:cover;
text-align:center;
padding:150px 0 50px 0;
}

.footer_in{
box-sizing: border-box;
display: flex;
justify-content:flex-end;
width:86%;
margin:0px auto;
}

.footer_in_in{
width:50%;

}
.f_text_area{width:100%;}
.f_text_area img{width:70%;}

.f_logo_area{
margin-left:auto;
width:40%;
margin-top:100px;
text-align: center;
}
@media screen and (max-width:1200px) { 
.f_logo_area{
margin-left:auto;
width:60%;
margin-top:100px;
text-align: center;
}
}
.f_logo{width:100%;}
.f_logo img{
width:80%;
margin: 0 auto 20px auto;
}

.f_line{
color:#fff;
}
.f_line p{
display: inline-block;
font-size: 13px;
letter-spacing:1px;
vertical-align:middle;
}
.f_line img{
display: inline-block;
vertical-align:middle;
width:25px;
margin: 0 0 0 10px;
}


.f_tel{
color:#fff;
font-size: 13px;
letter-spacing:1px;
}
.f_tel span{
font-size: 15px;
}


.f_copy{
width:100%;
text-align:left;
display: flex;
justify-content: space-between;
align-items: center;
padding:30px 2.5%; 
box-sizing: border-box;
}

.copy{
letter-spacing:1px;
text-align:left;
font-size:12px;
font-weight:400;
color:#181818;
margin:0px;
}

.f_copy ul{
text-align:left;
font-size:12px;
font-weight:400;
color:#181818;
display: flex;
justify-content:center;
}
.f_copy ul li{
margin:0px 0px 0px 15px;
}



#pageTop {
position:fixed;
bottom:140px;
right:40px;
width:40px;	
margin:0px auto 0px auto;
z-index:10;
}
#pageTop a img {
width:100%;
margin:0px auto 0px auto;
-webkit-transition: 0.3s ease-in-out;
   -moz-transition: 0.3s ease-in-out;
     -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
}
#pageTop a img:hover {
  opacity: 0.7;
}



.pc-none{
display:none !important;
}
.sp-br{
display:none !important;
}
.link_sp{
display:none !important;
}
.contact_btn_sp{
display:none !important;
}
#navToggle{
display:none !important;
}

.mt80{margin-top:80px;}


/* ---t_cv---*/

.t_cv_box{
position: fixed;
bottom: 0;
z-index: 99;
width: 100%;
padding: 30px 0 30px 0;
background-color: #ff6f00;
}
.t_cv_box_in{
width:90%;
max-width:1200px;
margin: 0px auto;
display: flex;
align-items: center;
justify-content:space-between;
}

.t_cv_view01{width:28%;}
.t_cv_view01 img{width:100%;margin:0px 0 0 0;}

.t_cv_view02{width:18%;}
.t_cv_view02 img{width:100%;margin:0px 0 0 0;}

.t_cv_view03{width:30%;}

.t_cv_view03 p{
font-size:3.5vw;
line-height:1.5;
margin:0px 0px 0px 0;
color:#fff;
font-family: 'Century Gothic',sans-serif;
font-weight:600;
letter-spacing:2px;
}
@media screen and (min-width:1200px) { 
.t_cv_view03 p{
font-size:46px;
line-height:46px;
margin:0px 0px 0px 0;
color:#fff;
font-family: 'Century Gothic',sans-serif;
font-weight:600;
letter-spacing:2px;
}
}

.t_cv_view04{width:18%;}



.t_cv_view a img{
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.t_cv_view a img:hover{
opacity: 0.5;
}



/* ---login---*/
.login_box{
width: 40%;
margin:0 auto;
padding:65px 0px 0px 0px;
}
.login_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
}
.login_box th {
display: block;
font-weight:400;
padding:0px 0px;
}
.login_box th span{color:red;font-size:12px;}
.login_box td  {display: block;padding:0px 0px 20px 0px;}

.login_box th  {text-align: left; vertical-align:top;}
.login_box td  {text-align: left; vertical-align:top; }
.login_box p{display:inline;padding:0px 0px 0px 0px;}

.login_forget_pass a{
text-decoration: underline;
}


/* ---register---*/
.register_box{
width: 60%;
margin:0 auto;
padding:40px 0px 0px 0px;
}
.register_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
}
.register_box th {
font-weight:400;
width: 30%;
padding:0px 0px 25px 0px;
text-align: left;
vertical-align:top;
}
.register_box th span{color:red;font-size:12px;}
.register_box td  {
padding:0px 0px 25px 0px;
text-align: left;
vertical-align:top;
}

.register_box p{display:inline;padding:0px 0px 0px 0px;}

.policy_tit{
padding:0px 0px 5px 0px;
}
.form_policy_box{
border: 1px solid #ccc;
width: 100%;
height: 200px;
padding: 25px;
box-sizing: border-box;
overflow-x:scroll;
font-size: 14px;
line-height: 1.7;
}

.privacy_block{
padding:0px 0px 15px 0px;
}

.agree_box{
text-align: center;
margin: 20px auto 0px auto;
}
.link_txt{text-decoration:underline;}


/* ---contact---*/

.contact_box{
width: 75%;
margin:0 auto;
padding:50px 0px 0px 0px;
text-align: center;
}
.contact_box p{text-align: center;margin: 0 auto;}

.contact_box table {
width: 100%;
border-collapse:collapse;
border-spacing:0;
margin:20px auto 0 auto;
}
.contact_box th {
font-weight:400;
padding:25px;
}
.contact_box th span{color:red;font-size:12px;}
.contact_box td  {padding:25px;}

.contact_box th  {border-bottom:1px solid #dddddd;width: 30%; text-align: left; vertical-align:top;}
.contact_box td  {border-bottom:1px solid #dddddd;text-align: left; vertical-align:top; }
.contact_box p{display:inline;padding:0px 20px 0px 5px;}

.form_01{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:0 0 0px;
width: calc(100% - 20px);
}
.form_02{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:10px 0 10px 0;
width: calc(50% - 20px);
}
.form_03{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:0 0 0px;
width: calc(100% - 20px);
height:200px;
resize: vertical;
}
.form_04{
border:0;
padding:12px;
font-size:16px;
border:solid 1px #ccc;
margin:0 0 0px;
width: calc(20% - 20px);
}
.form_01:focus {
box-shadow: 0 0 7px #ccc;
border: 1px solid #ff008c;
}
.form_02:focus {
box-shadow: 0 0 7px #ccc;
border: 1px solid #ff008c;
}
.form_03:focus {
box-shadow: 0 0 7px #ccc;
border: 1px solid #ff008c;
}
.form_04:focus {
box-shadow: 0 0 7px #ccc;
border: 1px solid #ff008c;
}


input.btn_f1{
letter-spacing:5px;
font-size:18px;
color:#fff;
font-weight:600;
width: 250px;
text-align: center;
display: block;
padding:15px;
margin: 50px 20px;
border-radius:3px;
background-color:#ff79a0;
border: 3px solid #ff79a0;
border-bottom: 3px solid #ea5e86;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
 -o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
cursor:pointer ; 
}
input.btn_f1:hover {
cursor:pointer ; 
color:#fff;
background-color:#ea5e86;
border: 3px solid #ea5e86;
border-bottom: 3px solid #cf476f;
}
input.btn_f2{
letter-spacing:5px;
font-size:18px;
color:#555;
font-weight:600;
width: 250px;
text-align: center;
display: block;
padding:15px;
margin: 50px 20px;
border-radius:3px;
background-color:#dddddd;
border: 3px solid #dddddd;
border-bottom: 3px solid #ccc;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
 -o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
cursor:pointer ; 
}
input.btn_f2:hover {
cursor:pointer ; 
color:#555;
background-color:#eeeeee;
border: 3px solid #eeeeee;
}

.btn_f3{
letter-spacing:2px;
font-size:16px;
color:#fff;
font-weight:500;
width: 250px;
text-align: center;
display: block;
padding:10px;
margin: 30px 0px;
border-radius:5px;
background-color:#96aae1;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
 -o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
cursor:pointer ; 
}
.btn_f3:hover {
cursor:pointer ; 
color:#fff;
background-color:#6b86ce;
}

.form_btn_area{
display: -webkit-flex;
display: flex;
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: center;
align-items: center;
}


/* ---コンテンツ表示アニメーション---*/
.animate {
opacity: 0;
transition: opacity 0.8s ease 0.2s, transform 0.8s ease 0.2s; /* 0.5秒の遅延 */
will-change: opacity, transform;
}

.fade-in-from-bottom {
transform: translateY(30px); /* 下から */
}

.fade-in-from-top {
transform: translateY(-30px); /* 上から */
}

.fade-in-from-left {
transform: translateX(-30px); /* 左から */
}

.fade-in-from-right {
transform: translateX(30px); /* 右から */
}

.animate.visible {
opacity: 1;
transform: translateY(0) translateX(0); /* 元の位置に */
}
