@charset "UTF-8";
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*, ::before, ::after { box-sizing: border-box; border-style: solid; border-width: 0; }
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -webkit-tap-highlight-color: transparent; /* 3*/ }
body { margin: 0; }
main { display: block; }
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
dt { font-weight: bold; }
dd { margin-left: 0; }
hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ border-top-width: 1px; margin: 0; clear: both; color: inherit; }
pre { font-family: monospace, monospace; /* 1 */ font-size: inherit; /* 2 */ }
address { font-style: inherit; }
a { background-color: transparent; text-decoration: none; color: inherit; }
abbr[title] { text-decoration: underline dotted; /* 2 */ }
b, strong { font-weight: bolder; }
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: inherit; /* 2 */ }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
svg, img, embed, object, iframe { vertical-align: bottom; }
button, input, optgroup, select, textarea { -webkit-appearance: none; /* 1 */ appearance: none; vertical-align: middle; color: inherit; font: inherit; background: transparent; padding: 0; margin: 0; border-radius: 0; text-align: inherit; text-transform: inherit; /* 2 */ }
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }
button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default; }
:-moz-focusring { outline: auto; }
select:disabled { opacity: inherit; }
option { padding: 0; }
fieldset { margin: 0; padding: 0; min-width: 0; }
legend { padding: 0; }
progress { vertical-align: baseline; }
textarea { overflow: auto; }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { outline-offset: -2px; /* 1 */ }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }
[type="number"] { -moz-appearance: textfield; }
label[for] { cursor: pointer; }
details { display: block; }
summary { display: list-item; }
[contenteditable]:focus { outline: auto; }
table { border-color: inherit; /* 1 */ border-collapse: collapse; }
caption { text-align: left; }
td, th { vertical-align: top; padding: 0; }
th { text-align: left; font-weight: bold; }

/* =========================================================
common
========================================================= */
html { font-size: 62.5%; -moz-text-size-adjust: none; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; overflow-y: scroll; margin: 0; padding: 0; border: 0; text-align: left; }
body { font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; background: #fff; color: #000; font-size: 1.6rem; letter-spacing: 0px; line-height: 1.9; overflow-wrap: break-word; word-wrap: break-word; word-break: normal; }
#wrap{line-height:1;}
#wrap ul { list-style: none; }
#wrap a { text-decoration: none; }
.inner { margin: 0 auto; position: relative; }
.pc { display: block; }
.sp { display: none; }
.tablet { display: none; }
@media only screen and (max-width:1280px) {
    .tablet { display: block; }
}
@media only screen and (max-width:768px) {
    html { font-size: 2.4vw; }
    .pc { display: none; }
    .sp { display: block; }
    .tablet { display: none; }
}

/* =========================================================
#header
========================================================= */
#top-head { width: 100%; height: 100px; background: #fff; display: flex; position: fixed; z-index: 999; border-bottom: 1px solid #e5e5e5; }
#top-head .inner { width: 100%; max-width: 1200px; margin: 0 auto; display: flex; justify-content: left; align-items: center; position: relative; }
#top-head .logo { position: absolute; right: 0; }
#top-head .pc_nav_content ul { max-width: 820px; width: 100%; }
#top-head .pc_nav_content ul li:nth-child(n+2) { margin-left: 30px; }
#top-head .pc_nav_content ul li .btn { max-width: 166px; width: 100vw; }
#top-head .pc_nav_content ul { margin-left: 50px; display: flex; list-style-type: none; align-items: center; }
#top-head .pc_nav_content ul li a { text-decoration: none; color: #404040; font-size: 1.4rem; }
#top-head .pc_nav_content ul li a:hover { color: #0BB0ED; }
#nav_toggle { display: none; }
#top-head .pc_nav_content { display: block; }
#top-head .sp_nav_content { display: none; }


@media screen  and ( max-width:1280px){
    h1 { margin-left: 1.5vw; }
    #top-head .pc_nav_content { display: block; }
    #top-head .pc_nav_content ul li a { font-size: 1.09375vw;}
    #top-head .pc_nav_content ul li:nth-child(n+2) { margin-left: 2.34375vw;}
    h1 a { width: 29vw; max-width: 110.59px; display: block; }
    h1 a img { width: 100%; display: block; }
    #top-head .inner { max-width: inherit; }
    #top-head .logo { top: 12px; right: 20px; }
    #top-head .logo a {  width: 90.67px; display: block; }
    #top-head .logo a img { width: 100%; display: block; }
/*    #nav_toggle { display: block; width: 24px; height: 24px; position: absolute; z-index: 100; top: 20px; left: 15px; }*/
    #nav_toggle div { position: relative; }
    #nav_toggle span { display: block; height: 2px; background: #0BB0ED; position: absolute; width: 100%; left: 0; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }
    #nav_toggle span:nth-child(1) { top: 0px; }
    #nav_toggle span:nth-child(2) { top: 9px; }
    #nav_toggle span:nth-child(3) { top: 18px; }
    .open #nav_toggle span:nth-child(1) { top: 10px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); transform: rotate(135deg); }
    .open #nav_toggle span:nth-child(2) { width: 0; left: 50%; }
    .open #nav_toggle span:nth-child(3) { top: 10px; -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); transform: rotate(-135deg); }
    #top-head { height: 60px; }
    #top-head .sp_nav_content { display: none; width: 100%; overflow: auto; padding: 0 0 50px 0;overflow: auto;}
    #top-head nav { display: none; position: absolute; top: 60px; left: 0; background: #fff; z-index: 999; width: 100%; overflow: auto; }
    #top-head nav ul { display: block;}
    #top-head nav ul li { text-align: center; font-size: 1.4rem; line-height: 1; padding: 20px 40px; text-align: left; }
    #top-head nav ul li.main_title { padding: 20px 20px; }
    #top-head nav ul li:last-child { border: none; }
    #top-head nav ul li a { display: block; color: #000000; }
    .kodomo { background-color: #fdf7fb; border-bottom: 1px solid #fae2f2; }
    #top-head .kodomo  .main_title a { font-weight: bold; color: #ff7a67; }
    .kodomo li { border-bottom: 1px solid #fae2f2; }
    .otona { background-color: #fff9db; border-bottom: 1px solid #fae2f2; }
    #top-head .otona  .main_title a{ font-weight: bold; color: #f09b27; }
    .otona li { border-bottom: 1px solid #fee9bd; }
    .heisya { background-color: #FFF; border-bottom: 1px solid #d3d3d3; }
    .heisya li { border-bottom: 1px solid #d3d3d3; }
    .htcheck_btn { margin: 40px auto; }
    .htcheck_btn .white.btn { width: 30vw; padding: 2vw; margin: 0 auto; display: block; font-size: 1.4rem; }
}

@media screen and (max-width:1023px){
    h1 { margin-left: 60px; }
    #top-head {height: 60px;}
    #top-head .pc_nav_content { display: none; }
    #top-head .sp_nav_content { display: block; }
    #nav_toggle { display: block; width: 24px; height: 24px; position: absolute; z-index: 100; top: 20px; left: 15px; }
    #top-head nav {height: 100vh;}
}

@media screen and (max-width:768px){
    #top-head .logo { right: 5.3vw; top:12px; }
    #top-head .sp_nav_content { height: 135vh; }
    #top-head nav ul li { font-size: 3.73vw; padding: 4.5vw 10.6vw; }
    #top-head nav ul li.main_title { padding: 4.5vw 5.33vw; }
    .htcheck_btn { padding: 8vw 0; margin:0 auto; }
    .htcheck_btn .white.btn { width: 53.33vw; padding: 2.6vw; font-size: 3.73vw; }
}
/* =========================================================
#footer
========================================================= */
footer { width: 100vw; margin: 100px auto 0; padding: 50px 0 0 0; font-size: 1.4rem; background: #FFF; border-top: 1px solid #dbdbdb; }
footer .inner { max-width: 1200px; }
footer a { color: #000; }
footer .txt_menu { display: flex; flex-wrap: wrap; align-items: center; justify-content:flex-end; }
footer .menu_1, footer .menu_2 { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
footer .menu_1 li:nth-child(n+2) { margin-left: 30px; }
footer .menu_1 .btn { max-width: 166px; width: 100vw; }
footer .menu_2 { margin: 30px auto 0; position: relative; align-items: flex-start; }
footer .menu_2 .txt_menu { flex-wrap: wrap; justify-content: flex-end; margin-top: 30px; }
footer .menu_2 li { position: relative; padding-left: 15px; margin-right: 15px; }
footer .menu_2 li:nth-child(n+4) { margin-right: 0; }
footer .menu_2 li + li:before { background: #CECECE; content: ""; left: 0; top: 4px; width: 1px; height: 20px; position: absolute; }
footer small { display: block; width: 100%; font-size: 1.3rem; text-align: right; line-height: 1; position: absolute; top: 70px; }
footer .footer_img { width: 20%; margin-left: 13px; }
footer .logo { width: 14vw; display: block; }
footer .logo img { width: 100%; }
footer a:hover { color: #0BB0ED; }

@media only screen and (max-width:1280px) {
    footer .inner { max-width: inherit; width:calc( 100% - 30px); }
}

@media only screen and (max-width:1024px) {
    footer { width: 100vw; margin: 9.76vw 0 0 0; padding: 0; font-size: 1.4rem; border-top: none; }
    footer .inner { max-width: inherit; width:100%; }
    footer .menu_1 { display: block; width: 97vw; margin: 0 auto; }
    footer .menu_1 .txt_menu { display: block; margin: 30px auto 0; }
    footer .menu_1 li { border-bottom: 1px solid #dbdbdb; line-height: 1; padding: 20px 0 20px 10px; }
    footer .menu_1 li:nth-child(n+2) { margin-left: 0; }
    footer .menu_1 li:first-child { border-top: 1px solid #dbdbdb; }
    footer .menu_1 li:last-child { border-bottom: none; padding: 30px 0 0; }
    footer .menu_1 .btn { max-width: 44.26vw; width: 100vw; margin: 0 auto; }
    footer .menu_2 { margin: 50px auto 0; display: grid; }
    footer .menu_2 .txt_menu { flex-wrap: wrap; justify-content: center; order: 1; width: 100vw; font-size: 1.3rem; margin-top: 0; }
    footer .menu_2 li { position: relative; padding-left: 3.73vw; margin-right: 3.73vw; line-height: 1; }
    footer .menu_2 li:nth-child(n+4) { margin-right: 15px; }
    footer .menu_2 li + li:before { top: 0; width: 1px; height: 13px; }
    footer .menu_2 li:nth-child(3) { order: 4; margin-top:0; }
    footer .menu_2 li:nth-child(4) { margin-top: 0; }
    footer .menu_2 li:nth-child(3):before { content: "";}
    footer small { position: static; order: 3; text-align: center; border-top: 1px solid #dbdbdb; padding:20px 0; font-size:1.3rem; letter-spacing: 1px; }
    footer .footer_img { width: 27.53vw; margin: 40px auto 0; order: 2; }
    footer .logo { width:15.70vw; margin: 0 auto; }
}

@media only screen and (max-width:768px) {
    footer { width: 100vw; font-size: 3.73vw; margin: 21vw 0 0 0;}
    footer .menu_1 { width: 92vw; }
    footer .menu_1 .txt_menu { margin: 8vw auto 0; }
    footer .menu_1 li { padding: 4.66vw 0 4.66vw 2.6vw; }
    footer .menu_1 li:last-child { border-bottom: none; padding: 8vw 0 0; }
    footer .menu_2 { margin: 13.33vw auto 0; }
    footer .menu_2 .txt_menu { font-size: 3.46vw; }
    footer .menu_2 li + li:before { height: 3.466vw; }
    footer .menu_2 li:nth-child(3) { margin-top: 6vw; }
    footer .menu_2 li:nth-child(4) { margin-top: 6vw; }
    footer .menu_2 li:nth-child(3):before { content: ""; order: 4; }
    footer .menu_2 li:nth-child(4):before { content: none; }
    footer small { padding: 5.3vw 0; font-size: 2.9vw; letter-spacing: 0.13vw; }
    footer .footer_img { width: 75.2vw; margin: 10.66vw auto 0; order: 2; }
    footer .logo { width: 42.58vw; }
}

/* =========================================================
link_btn
========================================================= */
.btn{display: flex; align-items:center;justify-content:center;cursor:pointer; position: relative; text-align:center; width: 100%;line-height: 1; padding: 10px; border-radius: 50px;}
.white.btn{color:#0bb0ed !important; border: solid 1px #0bb0ed; background-color: #fff; display: block;}
.white.btn:hover{color:#fff !important; background-color: #0bb0ed; }
.btn.blue{  background-color: #0bb0ed;color: #fff;}
.btn.pink{ border:1px solid #FF7A67; color:#FF7A67; }
.btn.pink:hover{ border:1px solid #FF7A67; color:#fff; background:#FF7A67; }

@media only screen and (max-width:1240px){
    .link_btn.red.about_entry p{font-size: 4.5vw;}
    .link_btn.red.about_entry span{font-size:2vw; margin-left: 3.22vw;}
}

@media only screen and (max-width:768px){
    .btn{ padding: 2.6vw;}
    .white.btn:hover{color:#0bb0ed !important; background-color: #fff; }
}
