<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";
.pc_only, .tb_only, .pctb_only, .sp_none {
  display: none !important;
}

.inner, .inner_sp {
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
}
.inner.inner--feature {
  padding: 20px 25px 0px;
}

.sp_inner_wide {
  width: 110%;
  width: -webkit-calc(100% + 50px);
  width: calc(100% + 50px);
  margin-left: -25px;
  margin-right: -25px;
}

.inner .inner {
  padding: 0;
}

.color_bg.color_bgin {
  padding: 40px 25px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
カテゴリ
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/


/*++++++++++++++++++++++++++++
jiyuu_area
++++++++++++++++++++++++++++*/

table:not(.calendar_block) td, table:not(.calendar_block) tr+tr {
  border-color: #20a0dc;
}


/*++++++++++++++++++++++++++++
kagaku_area
++++++++++++++++++++++++++++*/

.kagaku_area table:not(.calendar_block) td, .kagaku_area table:not(.calendar_block) tr+tr {
  border-color: #00b41e;
}


/*++++++++++++++++++++++++++++
shinro_area
++++++++++++++++++++++++++++*/

.shinro_area table:not(.calendar_block) td, .shinro_area table:not(.calendar_block) tr+tr {
  border-color: #f5910a;
}


/*++++++++++++++++++++++++++++
himitsu_area
++++++++++++++++++++++++++++*/

.himitsu_area table:not(.calendar_block) td, .himitsu_area table:not(.calendar_block) tr+tr {
  border-color: #e66e5f;
}

.himitsu_area .slider_himitsu.slick-slider {
    margin-left: -25px;
    margin-right: -25px;
}

.slider_himitsu.slick-slider .slick-slide p {
height : 130vw;
height : -webkit-calc(110vw + 40px);
height : calc(110vw + 40px);
}
.himitsu_area .slider_himitsu.slick-slider .slick-slide img {
    max-width: 90%;
    max-width: -webkit-calc(100% - 90px);
    max-width: calc(100% - 90px);
    max-height: 110vw;
}

/*++++++++++++++++++++++++++++
factory_area
++++++++++++++++++++++++++++*/

.factory_area table:not(.calendar_block) td, .factory_area table:not(.calendar_block) tr+tr {
  border-color: #aa69c3;
}


/*++++++++++++++++++++++++++++
jiten_area
++++++++++++++++++++++++++++*/

.jiten_area table:not(.calendar_block) td, .jiten_area table:not(.calendar_block) tr+tr {
  border-color: #4b5fd2;
}


/*++++++++++++++++++++++++++++
parents_area
++++++++++++++++++++++++++++*/

.parents_area table:not(.calendar_block) td, .parents_area table:not(.calendar_block) tr+tr {
  border-color: #f091aa;
}


/***************************************************************************************
------------------------------
パーツ
------------------------------
*****************************/


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
txt
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.tal_sp {
  text-align: left
}

.con_lead {
  text-align: left;
  font-size: 1.6rem;
}
.cat_lead {
  text-align: justify
}


/*++++++++++++++++++++++++++++
page_lead
++++++++++++++++++++++++++++*/

.page_lead {
  font-size: 1.6rem;
  margin-bottom: 50px;
}

.page_lead02 {
  margin-top: -20px;
}

.page_lead p {
  text-align: justify;
}


/*++++++++++++++++++++++++++++
リンク
++++++++++++++++++++++++++++*/

.col_04.anchor_link .col_in {
  width: 50%;
  padding-right: 2px;
  padding-bottom: 4px;
  margin-top: 0
}

.col_04.anchor_link .col_in:nth-child(2n) {
  padding-left: 2px;
}

.col_04 .col_in {
  margin-right: 0;
}

.anchor_link {
  margin-bottom: 80px;
}

.anchor_link.btn a {
  font-size: 2.4rem;
  padding: 8px 3px;
}

.anchor_link.btn a:after {
  margin-top: -3px;
  margin-left: 5px;
}

.col_sp_03.anchor_link .col_in {
  margin-top: 0;
  width: 32%;
  padding: 0;
}

.col_sp_03.anchor_link {
  justify-content: space-between;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ブロック
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mbll {
  margin-bottom: 80px !important;
}

.mtll {
  margin-top: 80px !important;
}

.mtl {
  margin-top: 70px !important;
}

.mbl {
  margin-bottom: 70px !important;
}

.sp_mt40 {
  margin-top: 40px !important;
}

.sp_mt20 {
  margin-top: 20px !important;
}

.sp_colin_t {
  margin-top: 40px !important;
}

.sp_mtl {
  margin-top: 70px !important;
}

.page_under_00 {
  margin-bottom: -140px !important;
}

.col_fit .col_in a {
  width: 100%;
}

.col_w_tl&gt;.col_in {
  padding-top: 0;
}

.col_w_btn&gt;.col_in {
  padding-bottom: 0;
}

.col_w .level_02_big {
  position: relative;
}
.col_sp01 .col_in+.col_in {
    margin-top: 20px;
}
.col_02 .col_in, .col_02 .col_02 {
  width: 100%;
  padding-top: 0;
  display: block;
}

.col_02 .col_in+.col_in {
  margin-top: 70px;
}

.col_02 .col_02 .col_in {
  width: 100%;
}

.col_02 .col_02 .col_in+.col_in {
  margin-top: 25px;
}

.inner02 .col_02 .col_in, .inner03 .col_02 .col_in, .side_nav_con .col_02 .col_in, .inner02 .kakomi_border .col_02 .col_in {
  width: 100%;
}

.col_02 .col_in+.col_in {
  margin-top: 40px;
}

.col_03 {
  width: 100%;
  margin: 0;
}

.col_03 .col_in {
  width: 100%;
  margin: 0;
}

.col_03 .col_in:nth-child(3n+2) {
  margin-right: 0;
  margin-left: 0;
}

.col_03 .col_in+.col_in {
  margin-top: 25px;
}

.side_nav_con .col_03 {
  width: 100%;
  margin: 0;
}

.side_nav_con .col_03 .col_in {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.col_04 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.mod_img_panel.col_04 {
  margin-left: 0;
  margin-right: 0;
}

.col_04 .col_in {
  width: 100%;
  margin-top: 4% !important;
  margin-right: 0;
  margin-left: 0;
}

.col_04 .col_in:nth-child(1) {
  margin-top: 0 !important;
}

.mod_img_panel.col_04 .col_in {
  width: 47%;
  margin-top: 20px;
}

.mod_img_panel.col_04 .col_in:nth-child(1), .mod_img_panel.col_04 .col_in:nth-child(2) {
  margin-top: 0;
}

.bg_box {
  padding-top: 60px;
  padding-bottom: 70px;
}

.bg_box .inner .level_02_big {
  margin-top: 0;
}

.kakomi {
  background: #e1f3f6;
  padding: 30px 40px;
}

.bg_block {
  padding-bottom: 50px;
}

.sp_col_02 {
  justify-content: space-between;
  align-items: stretch;
  position: relative;
}

.sp_col_02&gt;.col_in {
  margin-top: 35px
}

.sp_col_02&gt;.col_in:nth-child(1), .sp_col_02&gt;.col_in:nth-child(2) {
  margin-top: 0 !important;
}

.sp_col_02&gt;.col_in {
  width: 48% !important;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
パン屑
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
タイトル
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.post_page .article_con&gt;.sp_m:first-child, .page_type .article&gt;.inner:first-child&gt;section:first-child&gt;.sp_m:first-child {
  margin-top: inherit;
}


/*++++++++++++++++++++++++++++
page_tl
++++++++++++++++++++++++++++*/

.page_tl {
  padding-bottom: 15px;
}

.page_tl .cat_name {
  font-size: 2rem;
}

.page_tl .icon {
  width: 60px;
  min-height: 24.8vw;
  margin-left: 0;
  height: auto;
}

.page_tl .bg_img {
  width: 110%;
  width: -webkit-calc(100% + 50px);
  width: calc(100% + 50px);
  margin-left: -25px;
  margin-right: -25px;
}

.page_tl .bg_img+.level_01, .page_tl .bg_img+.icon+.level_01 {
  margin-right: 0;
}

.page_tl .icon+.level_01 {
  margin-left: 15px;
}

.page_tl *+.level_01 {
  margin-right: 0;
}

.page_tl .bg_img+* {
  margin-left: 0;
  min-height: 24.8vw;
}


/*++++++++++++++++++++++++++++
ノーマル
++++++++++++++++++++++++++++*/

.catpage_mv {
  background-size: auto 50%;
  background-repeat: repeat;
  height: inherit;
  padding: 50px 0;
}

.catpage_mv .tl {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  padding: 15px;
  font-size: 3.8rem;
}

.catpage_mv .txt {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

.level_01 {
  font-size: 2.4rem;
  margin-bottom: 20px;
}

.level_01 .small {
  font-size: 1.5rem;
}

.category_detail .level_01, .special_detail .level_01 {
  margin-bottom: 0
}

.archive_page .level_01, .page_type .level_01 {
  font-size: 2.8rem;
}

.level_02, .post_page .article_con h2:not(.level_03) {
  margin-top: 70px;
  font-size: 2rem;
}

.level_02_big {
  font-size: 2.5rem;
}

.maincat_tl {
  flex-direction: column;
  padding-top: 50px;
  margin-bottom: 10px;

}

.maincat_tl img {
  margin-right: 0;
}

.maincat_tl .txt {
  font-size: 3.6rem;
  line-height: 1.5;
  padding-top: 10px;
      text-align: center;
}


/*++++++++++++++++++++++++++++
ユニーク
++++++++++++++++++++++++++++*/

.level_special_02 {
  font-size: 2.7rem;
  margin: 60px auto 20px;
}

.level_fukidashi_txt {
  background: url(../../assets/images/shape_fukidashi_sp.png) center top no-repeat;
  background-size: 86px 97px;
  margin-left: 0;
  min-height: inherit;
}

.level_fukidashi_txt .fukidashi {
  font-size: 1rem;
  width: 100%;
  margin-left: auto;
  height: 87px;
  padding-top: 10px;
}

.level_fukidashi_txt:before {
  display: none;
}

.level_fukidashi_txt .fukidashi em {
  font-size: 4rem;
}

.level_fukidashi_txt .tl {
  width: 100%;
  font-size: 1.6rem;
  margin-top: 10px;
}

.level_fukidashi_txt .fukidashi_1s {
  font-size: 5rem;
  padding-top: 16px;
}

.level_fukidashi_txt_big .tl {
  font-size: 3rem;
  line-height: 1.4;
}

.tl_point {
  display: block;
  margin-bottom: 7px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ボタン
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_btn_narabi .col_in, .mod_btn_narabi .col_in .btn a {
  width: 100%;
}

.mod_btn_narabi .col_in+.col_in {
  margin-left: 0;
}

.btn_more {
  margin-top: 25px
}

.btn_big a {
  font-size: 9vw;
      width: 100%;
}

.btn_xbig a, .btn_xbig input[type="submit"] {
  font-size: 4rem;
  width: 100%;
  padding: 30px 10px;
  margin-top: 100px;
}

.btn_xbig_long a {
  font-size: 7vw;
}

.btnbanner .cat_btn_area {
  display: block;
}

.btnbanner .cat_btn_area li {
  width: 100%;
  margin-left: 0;
}

.btnbanner .cat_btn_area li+li {
  margin-top: 20px;
}

.btnbanner .cat_btn_area li a {
  font-size: 2rem;
  min-height: inherit;
}

.btnbanner .cat_btn_area li a:before {
  background-size: 87px auto;
}

.btnbanner .btn {
  padding-bottom: 70px;
}

.btn_big_more a {
  padding: 10px 20px;
}
.btn.btn_big_more a {
  width: 100%
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
big_bnr
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.big_bnr {
  min-height: inherit;
  padding: 0;
  display: block;
}

.big_bnr:before {
  background-position: right bottom;
  background-size: 235% auto;
  top:0;
}

.big_bnr .txt_block {
  padding: 20px 20px 0px 20px;
  display:block;
  width: inherit;
}

.big_bnr .tl {
  font-size: 2.5rem;
}

.big_bnr:before {
  width: 100%;
  height: 100%;
}

.big_bnr figure {
  max-width: inherit;
  width: 100%;
  padding: 0px 10px 0px 10px;
  position: relative;
  top: inherit;
  right: inherit;
  -webkit-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
}
.big_bnr .btn {
    width: 100%;
    position: relative;
    left: inherit;
    bottom: inherit;
    margin-top: 20px;
}
.big_bnr:after {display:none;}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
リスト
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.li_ml&gt;li {
  font-size: 1.6rem;
}


/*++++++++++++++++++++++++++++
variation_circle
++++++++++++++++++++++++++++*/

.variation_circle li {
  width: 47%;
  margin-top: 5vw;
}

.variation_circle li:nth-child(1), .variation_circle li:nth-child(2) {
  margin-top: 0;
}

.variation_circle li span {
  font-size: 4vw;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pager
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.pager {
  margin: 35px auto 0 auto;
  padding: 0;
  text-align: center;
  width: 100%;
  display: block;
  padding-bottom: 10px;
}

.pager, .pager a {
  font-size: 1.6rem;
}

.pager .cr_list {
  padding-top: 10px;
  text-align: center;
}

.pager .prev a, .pager .next a {
  width: 114px;
  padding-left: 0;
  padding-right: 0;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
form
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/


/*++++++++++++++++++++++++++++
radio
++++++++++++++++++++++++++++*/

.radio_label input[type="radio"]+.radio_parts {
  padding: 10px 20px 10px 50px;
}

.radio_label input[type="radio"]+.radio_parts:before {
  width: 31px;
  height: 31px;
  left: 12px;
}

.radio_label input[type="radio"]+.radio_parts:after {
  height: 15px;
  width: 15px;
  left: 20px;
}


/*++++++++++++++++++++++++++++
form_big_area
++++++++++++++++++++++++++++*/

.form_big_area .form_big_area_con input[type=text] {
  width: 100%;
}

.form_big_area .form_big_area_con .btn input {
  width: 100% !important;
  margin-left: 0;
  margin-top: 10px;
  background-position: 30px 18px;
}

.form_big_area .form_big_area_con .btn {
  width: 100%;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
リスト
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
table
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

table:not(.calendar_block) tr {
  display: block;
}

table:not(.calendar_block) th, table:not(.calendar_block) td {
  display: block;
  width: 100%;
}

table:not(.calendar_block) td {
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  border-top-width: 1px !important;
  border-top-style: solid;
}

table:not(.calendar_block) tr+tr {
  border-top-width: 1px;
  border-top-style: solid;
}

table:not(.calendar_block) tbody&gt;tr:first-child&gt;*:first-child {
  -webkit-border-radius: 5px 5px 0 0;
  -moz-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
}

table:not(.calendar_block) tbody&gt;tr:first-child&gt;*:last-child {
  border-radius: 0;
}

table:not(.calendar_block) tbody&gt;tr:last-child&gt;th:first-child {
  border-radius: 0;
}

table:not(.calendar_block) tbody&gt;tr:last-child&gt;*:last-child {
  -webkit-border-radius: 0 0 5px 5px;
  -moz-border-radius: 0 0 5px 5px;
  border-radius: 0 0 5px 5px;
}

table:not(.calendar_block) tr th {
  border-bottom: 0;
}


/*++++++++++++++++++++++++++++
calendar_block
++++++++++++++++++++++++++++*/

table.calendar_block th, table.calendar_block td, table.calendar_block p {
  font-size: 10px;
}

table.calendar_block td {
  padding: 2px 4px;
}

table.calendar_block td:before {
  height: 42px;
}

table.calendar_block .moon {
  padding-left: 12px;
}

table.calendar_block .moon:before {
  width: 10px;
  height: 10px;
  top: 2px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
画像
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.img_sp50p img {
  display: block;
}

.img_w {
  max-width: 100%;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
eye_catching
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
page_cat
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.page_cat {
  flex-wrap: wrap;
  padding: 10px 0;
}

.page_cat .inner {
  padding: 0;
}

.page_cat li+li {
  margin-left: 0px;
}

.page_cat li {
  margin-right: 10px;
  margin-bottom: 5px;
}

.page_cat dl {
  font-size: 1.1rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
parents_head
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.parents_head {
  background: #fdf0ef;
  padding-bottom: 30px;
}

.parents_head_ttl {
  display: flex;
  flex-direction: column;
  padding: 30px 0 30px;
  align-items: center;
}

.parents_head_ttl .tl {
  margin-right: 0;
  padding: 0 0 13px 10px;
  margin-bottom: 30px;
}

.parents_head_ttl .tl span {
  width: 136px;
  bottom: -20px;
  right: -25px;
}

.parents_head_ttl .txt {
  font-size: 1.3rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
feed_item
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.feed_item .feed_item_inner {
  display: block;
  padding: 20px;
}

.feed_item .feed_item_img {
  width: 100%;
  height: auto;
  padding-top: 65%;
  margin-right: 0;
}

.feed_item .feed_item_info {
  display: block;
  position: static;
}

.feed_item .feed_item_desc .feed_item_ttl {
  height: auto;
  margin-bottom: 1.3rem;
  margin-top: 1.3rem;
}

.feed_item .feed_item_tags {
  max-width: none;
  width: 100%;
  margin-bottom: 1.3rem;
}

.feed_item .feed_item_info .feed_item_btn {
  width: 100%;
}

.feed_item .feed_item_tags li {
  max-width: none;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
スライダー
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.slick-current .caption {
  padding: 4px 10px 5px 10px;
  line-height: 1.4;
}

/*++++++++++++++++++++++++++++
parents_slider
++++++++++++++++++++++++++++*/
.parents_slider figure {
  height: auto;
  padding-top: 60.5%;
}

.parents_slider .slick-slide {
  margin: 0 2vw;
}

.parents_slider .slick-list {
  margin: 0;
}

.parents_slider .slick-prev,
.parents_slider .slick-next {
  top: 23vw;
  z-index: 999;
}

.parents_slider .slick-next {
  right: 1vw;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.parents_slider .slick-prev {
  left: 1vw;
  -webkit-transform: translateY(-50%) rotate(-180deg);
  transform: translateY(-50%) rotate(-180deg);
}

.parents_slider_ttl {
  margin-bottom: 1rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hug_img
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.hug_img.img_l figure, .hug_img.img_l .img_box, .hug_img.img_r figure, .hug_img.img_r .img_box {
  float: none;
  width: 100%;
  max-width: inherit;
  margin-left: 0;
  margin-right: 0;
}

.hug_img.img_r_r {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.hug_img.img_r_r figure, .hug_img.img_r_r.img_box {
  margin-bottom: 0;
}

.hug_img.hug_img_txtnoflow .txt_block+figure, .hug_img.hug_img_txtnoflow .txt_block+.img_box {
  margin-top: 20px;
}

.hug_img.hug_img_txtnoflow .txt_block {
  float: none;
  width: 100%;
}

.hug_img_txtnoflow_img400 figure, .hug_img_txtnoflow_img400 .sent {
  width: 100%;
  margin-bottom: 20px;
}

.hug_img.img_r.hug_img_only_img220 .sent_540 {
  margin-bottom: 20px;
  width: 100%;
}

.hug_img.img_r.hug_img_only_img220 figure {
  width: 100%;
}

.hug_img.img_r_img375 figure {
  width: auto;
}

.hug_img.img_r .w425 {
  width: auto;
  margin-bottom: 40px;
}

.hug_img.img_l.tour_lead_thum_area figure {
  width: 100%;
  margin-bottom: 20px;
}

.hug_img.img_l.tour_lead_thum_area .sent {
  width: 100%;
}
.hug_img li {
  width: 100%;
}

/***************************************************************************************
------------------------------
モジュール
------------------------------
*****************************/


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_img_panel
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_img_panel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
}

.mod_img_panel li {
  width: 47%;
}

.mod_img_panel .img {
  height: 16vw;
}

.mod_img_panel a .txt {
  font-size: 1.1rem;
  display: block;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_label_panel
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_label_panel_02 figure+dl&gt;dt {
  font-size: 2rem;
}

.sp_h_normal .mod_label_panel figure {
  height: inherit;
}

.sp_h_normal .mod_label_panel figure img {
  position: relative;
}

.mod_label_panel_03 .fukidashi {
  position: absolute;
  top: -20px;
  right: -10px;
  z-index: 10;
  width: 20%;
  height: 20%;
}

.mod_label_panel_03 figure+dl&gt;dt {
  font-size: 3rem;
}

.mod_label_panel_03 figure+dl&gt;dt .copy {
  font-size: 1.6rem;
  padding-bottom: 10px;
}

.mod_label_panel_03 figure+dl&gt;dt .small {
  font-size: 3rem;
  display: block;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_icon_panel
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_icon_panel {
  margin-top: -4%;
}

.mod_icon_panel li {
  margin: 0;
  width: 50%;
  margin-bottom: 5px;
  width: 48%;
  margin-top: 4%;
}

.mod_icon_panel li:nth-child(2n) {
  margin-left: 4%;
}

.mod_icon_panel a {
  width: 100%;
}

.mod_icon_panel p {
  font-size: 4.1vw;
}

.mod_icon_panel li:nth-child(2n) {
  margin-left: 4%;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_flow
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_flow&gt;li dl:first-of-type dt .tl {
  top: 48px;
  padding-right: 10px;
  line-height: 1.2;
}

.mod_flow&gt;li dl:first-of-type dt {
  width: 100%;
  -webkit-border-radius: 4px 4px 0 0;
  -moz-border-radius: 4px 4px 0 0;
  border-radius: 4px 4px 0 0;
}

.mod_flow&gt;li dl:first-of-type dd {
  width: 100%;
  background: none;
  height: inherit;
  padding: 15px 25px 15px 25px;
}


/*++++++++++++++++++++++++++++
mod_flow　オリジナル
++++++++++++++++++++++++++++*/

.mod_flow&gt;li dl {
  border: none;
}

.inner03 .mod_flow .col_02 .col_in {
  width: 100%;
}

.mod_flow .col_02 .col_in+.col_in {
  margin-top: 40px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_book_buy
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_book_buy .img_box {
  width: 100%;
}

.mod_book_buy .btn_block {
  width: 100%;
  margin-top: 30px;
}

.mod_book_buy .btn a {
  font-size: 5.5vw;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_btn_panel
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_btn_panel.col_04 {
  justify-content: space-between;
}

.mod_btn_panel.col_04 .col_in {
  width: 47%;
  padding-bottom: 16vw;
  margin-top: 50px;
}

.mod_btn_panel.col_04 .col_in:nth-child(1), .mod_btn_panel.col_04 .col_in:nth-child(2) {
  margin-top: 0px;
}

.mod_btn_panel .txt_block .tl {
  font-size: 1.5rem;
}

.mod_btn_panel .txt_block .txt {
  font-size: 1.2rem;
}

.mod_btn_panel .btn_style .in {
  font-size: 3.5vw;
  padding: 3vw 0;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_chart
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_chart {
  padding: 30px;
}

.mod_chart .btn_box.col_02 .col_in+.col_in {
  margin-top: 10px;
}

.mod_chart .btn_box.col_02 .col_in {
  width: 100%;
}

.mod_chart.mod_chart_a .level_fukidashi_txt_big {
  margin-bottom: 20px;
}

.mod_chart.mod_chart_a .level_fukidashi_txt_big .tl {
  font-size: 4rem;
}

.mod_chart .copy {
  font-size: 2rem;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_note_block
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_note_block_area {
  padding: 20px;
}

.mod_note_block {
  padding: 9vw 20px 30px 20px;
}

.mod_note_block:before {
  background-size: 12.8vw auto;
  height: 10vw;
}

.mod_note_block .level_02_big {
  font-size: 2.7rem;
  margin-bottom: 20px;
}

.mod_note_block .level_02_big .small {
  font-size: 2rem;
  display: inline-block;
}

.mod_note_block .btn_more a {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  font-size: 6.4vw;
  min-width: inherit;
}

.mod_note_block .hug_img {
  margin-top: 0;
}

.mod_note_block .mod_note_block_img325no figure {
  width: 90%;
  margin-left: 5%;
  margin-bottom: 20px;
}

.mod_note_block .mod_note_block_img200no figure {
  width: 60%;
  margin-left: 20%;
  margin-bottom: 20px;
}

.mod_note_block .mod_note_block_img325no .txt_block, .mod_note_block .mod_note_block_img200no .txt_block {
  width: 100%;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_labelimg
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_labelimg .col_in, .mod_labelimg.mod_labelimg_02 .col_in, .mod_labelimg.mod_labelimg_02 .col_in:not(:nth-child(1)):not(:nth-child(2)) {
  width: 47%;
  margin-top: 5vw;
}

.mod_labelimg .col_in:nth-child(1), .mod_labelimg .col_in:nth-child(2) {
  margin-top: 0;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_person
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_person {
  width: 100%;
}

.mod_person .txt_block {
  font-size: 1.6rem;
  padding: 10px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_btnbannerimg
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.inner04 .mod_btnbannerimg .col_02 .col_in, .inner04 .mod_btnbanner_noimg .col_02 .col_in {
  width: 100%;
}

.mod_btnbannerimg li a p {
  width: 80%;
  width: -webkit-calc(100% - 101px);
  width: calc(100% - 101px);
  line-height: 1.4;
}

.mod_btnbannerimg li a p .sub {
  font-size: 1.3rem;
}

.mod_btnbannerimg li a p .txt {
  font-size: 1.8rem;
}

.inner04 .mod_btnbannerimg .col_02 .col_in+.col_in, .inner04 .mod_btnbanner_noimg .col_02 .col_in+.col_in {
  margin-top: 10px;
}

.mod_btnbanner_noimg .txt {
  text-align: justify !important;
}

.mod_btnbanner_noimg.wide li {
  width: 100%;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_icon_panel
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_icon_panel.col_sp04 {
  margin-top: -2%;
}

.mod_icon_panel.col_sp04 li {
  width: 23.5%;
  margin-left: 2%;
  margin-top: 2%;
}

.mod_icon_panel.col_sp04 li:nth-child(4n+1) {
  margin-left: 0;
}

.mod_icon_panel.col_sp04 li a {
  padding: 7px 3px 5px 3px;
}

.mod_icon_panel.col_sp04 li img {
  width: 80%;
}

.mod_icon_panel.col_sp04 li .img {
  margin-bottom: 7px;
}

.mod_icon_panel.col_sp04 p {
  line-height: 1.2;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_label_panel
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_label_panel figure {
  height: 50vw;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_book_txt
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_book_txt {
  width: 100%;
}

.mod_book_txt .img_box {
  width: 100%;
}

.mod_book_txt .txt_block {
  width: 100%;
  margin-top: 20px;
}

.mod_book_txt .level_02_big {
  text-align: center;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_book_txt
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_kensaku50on_panel {
  width: 100%;
}

.mod_kensaku50on_panel li {
  width: 18%;
  margin-left: 2%;
}

.mod_kensaku50on_panel li:nth-child(5n+1) {
  margin-left: 0;
}

.mod_kensaku50on_panel.btn a {
  width: 100%;
  text-align: center;
  font-size: 5vw;
      padding-left: 0;
    padding-right: 0;
}

.mod_kensaku50on_panel.col_02 .col_in+.col_in {
  margin-top: 10px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_icon_block
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.mod_icon_block {
  flex-direction: column;
}

.mod_icon_block figure {
  margin-right: 0;
  margin-bottom: 20px;
}

.mod_icon_block .tl {
  text-align: center;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
mod_btnbanner_book
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.mod_btnbanner_book a {
    width: 100%;
}

.mod_btnbanner_book .cat_btn_area {
    width: 100%;
}

.mod_btnbanner_book a {
    padding: 25px;
}

.mod_btnbanner_book a figure {
    width: 100%;
}

.mod_btnbanner_book a .txt_block {
    margin-top: 10px;
}

.mod_btnbanner_book a .tl {
    margin-bottom: 10px;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
author_block
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.author_ttl_box {
  display: flex;
  margin-bottom: 20px;
}
.author_img {
  width: 100px;
  margin-right: 10px;
}
.author_ttl {
  flex: 1 1 0%;
  margin-bottom: 0;
}

/***************************************************************************************
------------------------------
header / nav
------------------------------
*****************************/

header .inner {
  padding-left: 10px;
  position: relative;
}

header {
  padding-top: 3vw;
  padding-bottom: 3vw;
  border-bottom: 1px solid #cccccc;
  z-index: 1000;
  background: #fff;
  position: relative;
    overflow: inherit;
}

._popIn_recommend_header {
  z-index: 100;
}

header .logo a, p.logo a img {
  display: block;
}

header .logo {
  width: 30%;
}


/***************************************************************************************
------------------------------
sp_menu 
------------------------------
*****************************/

.sp_menu {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  background-size: 12.5px 12.5px;
  border: 1px solid #14873D;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -webkit-box-shadow: 0 2px 0 rgb(21, 135, 61);
  -moz-box-shadow: 0 2px 0 rgb(21, 135, 61);
  box-shadow: 0 2px 0 rgb(21, 135, 61);
  overflow: hidden;
  margin-bottom: 5px;
  background: #fff;
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  text-decoration: none;
  position: absolute;
  top: 0;
  right: 10px;
  height: 100%;
  line-height: 1;
  font-weight: 700;
}

.sp_menu a {
  text-decoration: none;
  color: #14873D;
  width: 100%;
  padding: 0 7px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
}

.sp_menu a .icon:before, .sp_menu a .icon:after, .sp_menu a .icon em:before {
  position: absolute;
  content: "";
  background: #14873D;
  height: 3px;
  width: 20px;
  left: 0;
  top: 0;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  transition: .7s;
}

.sp_menu a .icon:after {
  top: 6px;
}

.sp_menu a .icon em:before {
  top: 12px;
}

.sp_menu .icon {
  width: 20px;
  height: 15px;
  margin-right: 5px;
  position: relative;
}

.sp_menu .txt {
  width: 4em;
  text-align: center;
  position: relative;
}

.sp_menu .txt em {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 4em;
  text-align: center;
}

.sp_menu .txt .menu_on {
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  opacity: 0;
}

.sp_menu .txt .menu_off {
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  opacity: 1;
}

.sp_menu .on .icon:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 6px;
}

.sp_menu .on .icon:after {
  opacity: 0;
}

.sp_menu .on .icon em:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 6px;
}

.sp_menu .on .txt .menu_on {
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  opacity: 1;
}

.sp_menu .on .txt .menu_off {
  transition: 0.5s ease;
  -webkit-transition: 0.5s ease;
  opacity: 0;
}


/***************************************************************************************
------------------------------
nav
------------------------------
*****************************/

nav {
  display: none;
  position: absolute;
  top: 11.4vw;
  left: 0;
  width: 100%;
  min-width: auto;
  z-index: 1000;
  background: #fff;
}

.js_cover_display {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 2000px;
  height: 100vh;
  z-index: 999;
  background: rgba(0, 0, 0, 0.6);
  cursor: pointer;
}

nav .inner {
  padding: 10px 5px 10px 10px;
}

nav .kidsnet_nav li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: stretch;
  width: 25%;
  min-height: 20vw;
  text-align: center;
}

nav .kidsnet_nav li a {
  border: 1px solid #000;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  display: block;
  width: 100%;
  font-size: 3vw;
  line-height: 1.3;
  background-position: center 2.5vw;
  padding: 11vw 3px 2vw 3px;
  margin-right: 5px;
  margin-bottom: 5px
}
nav .kidsnet_nav li {
    width: 100%;
    min-height: inherit;
}

nav .kidsnet_nav li a {
    border: none;
    border-top: 1px solid #ccc;
    border-radius: inherit;
    padding: 20px 60px 20px;
    margin: 0;
    background-position: 20px center;
    text-align: left;
    font-size: 1.6rem;
}

nav .kidsnet_nav li .parent {
    position: relative;
}

nav .kidsnet_nav li .parent:before,nav .kidsnet_nav li .parent:after {
    width: 18px;
    height: 3px;
    margin-top: -1px;
    content: "";
    top: 20px;
    right: 0;
    background: #000;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    border-radius: 50px;
    transition: 0.5s ease;
}

nav .kidsnet_nav li .parent:before {
  -webkit-transform: translate(0%, -50%) rotate(-45deg);
  transform: translate(0%, -50%) rotate(90deg);
}

nav .kidsnet_nav li.on &gt; .parent:before {
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}

nav .sub_nav {
    width: 100%;
    margin-left: 53px;
}

nav .kidsnet_nav .sub_nav {
  margin-left: 0;
  padding-left: 53px;
}

nav .kidsnet_nav .sub_nav .sub_nav {
  padding-left: 20px
}

nav .sub_nav a {
    background: none !important;
    padding: 12px 25px 12px 5px !important;
}
nav .kidsnet_nav .nav_search {
    color: #4a5ed2;
    font-weight: 700;
}

nav .kidsnet_nav .nav_search input[type=text] {
    border: none;
    -webkit-box-shadow: inset 2px 2px 0 #ccc;
    -moz-box-shadow: inset 2px 2px 0 #ccc;
    box-shadow: inset 2px 2px 0 #ccc;
    background: #fff;
    height: 40px;
    width: 100%;
    padding: 10px;
    background: #eceffb url(../images/navicon_search.png) 10px center no-repeat;
    background-size:20px 21px;
    font-size: 16px;
    padding: 5px 5px 5px 40px;
}

nav .kidsnet_nav .nav_search {
    border-top: 1px solid #ccc;
    padding: 12px 25px 20px 5px !important;
    width: 100%;
}

nav .kidsnet_nav .nav_search dt {
    margin-bottom: 5px;
}

nav .kidsnet_nav li:nth-of-type(1) a {
  background-image: url(../../assets/images/navicon_jiyuu.png);
}

nav .kidsnet_nav li:nth-of-type(2) a {
  background-image: url(../../assets/images/navicon_kagaku.png);
}

nav .kidsnet_nav li:nth-of-type(3) a {
  background-image: url(../../assets/images/navicon_shinro.png);
}

nav .kidsnet_nav li:nth-of-type(4) a {
  background-image: url(../../assets/images/navicon_himitsu.png);
}

nav .kidsnet_nav li:nth-of-type(5) a {
  background-image: url(../../assets/images/navicon_factory.png);
}

nav .kidsnet_nav li:nth-of-type(6) a {
  background-image: url(../../assets/images/navicon_jiten.png);
}

nav .kidsnet_nav li:nth-of-type(7) a {
  background-image: url(../../assets/images/navicon_parents.png);
}

nav .kidsnet_nav &gt; li:not(.kidsnet_nav_search) {
  display: block;
  flex: none;
  text-align: left;
}
nav .kidsnet_nav &gt; li span {
  display: block;
  text-align: left;
  font-size: 1.6rem;
}

nav .kidsnet_nav .kidsnet_nav_search {
  border-top: 1px solid #ccc;
  padding: 15px 20px 20px 20px;
}

nav .kidsnet_nav .kidsnet_nav_search form {
  width: 100%;
  padding-left: 40px;
}

nav .kidsnet_nav .kidsnet_nav_search input[type=text] {
  -webkit-box-shadow: inset 2px 2px 0 #ccc;
  -moz-box-shadow: inset 2px 2px 0 #ccc;
  box-shadow: inset 2px 2px 0 #ccc;
  margin-left: 0;
  width: 100%;
  padding: 5px 5px 5px 40px;
  background-image: url(../../assets/images/icon_search_header.png);
  background-repeat: no-repeat;
  background-size: 20px auto;
  background-position: 10px 10px;
}

nav .kidsnet_nav .kidsnet_nav_search .kidsnet_nav_search_ttl {
    color: #14873d;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 13px;
}

nav .kidsnet_nav .kidsnet_nav_search .search_submit {
  display: none;
}

/***************************************************************************************
------------------------------
main
------------------------------
*****************************/


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TOP
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.frontpage main {
  margin-bottom: -80px;
}
.level_type_02 {
    font-size: 6vw;
    margin-bottom: 10px;
}

/*++++++++++++++++++++++++++++
front_lead
++++++++++++++++++++++++++++*/

.front_lead {
  font-size: 1.2rem;
}

.is_topics_exists .front_lead {
  font-size: 1.1rem;
  line-height: 1.4;
}

/*++++++++++++++++++++++++++++
BG
++++++++++++++++++++++++++++*/
.parents_area.bg_block:after {
  left: 0;
  right: auto;
}

/*++++++++++++++++++++++++++++
mv
++++++++++++++++++++++++++++*/
.slider_top {
  height: calc((100vw - 54px) * 0.588);
  margin-bottom: 18px;
}
.slider_top.slick-slider:before {
  left: -100%;
  left: -webkit-calc(100% - 27px);
  left: calc(100% - 27px);
}
.slider_top.slick-slider:after {
  right: -100%;
  right: -webkit-calc(100% - 27px);
  right: calc(100% - 27px);
}
.slider_top .slick-list.draggable:before {
    width: 90%;
    width: -webkit-calc(100% - 54px);
    width: calc(100% - 54px);
    height: 100%;
    background: url(../images/slider_top_cr_sp.png) center center no-repeat;
    background-size: 100% 100%;
    pointer-events: none;
}
.frontpage .slick-slide img {
  width: 90%;
  width: -webkit-calc(100vw - 54px);
  width: calc(100vw - 54px);
  
}

.frontpage button.slick-prev.slick-arrow {
  width: 27px;
  left: 0;
  background-size: cover;
}

.frontpage button.slick-next.slick-arrow {
  right: 0;
  width: 27px;
  background-size: cover;
}

.frontpage .slider_top  .slick-slide {
  width: 90%;
  width: -webkit-calc(100vw - 54px);
  width: calc(100vw - 54px);
}
.slider_top .slick-prev:before {
    right: 4px;
    width: 20px;
}
.slider_top .slick-next:before {
    left: 4px;
    width: 20px;
}

.is_topics_exists .slider_top.slick-slider {
  margin-bottom: 18px;
}
.is_topics_exists .slider_top .slick-dots {
  bottom: -20px !important;
  line-height: 1;
}

.is_topics_exists .slider_top .slick-dots li {
  margin: 0 -2px !important;
}

.is_topics_exists .slider_top .slick-dots li button:before {
  font-size: 10px !important;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
topics
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.frontpage .top_topics_area .slider{
  display: none;
}
.frontpage .top_topics_area .slider.slick-initialized{
  display: block;
}
.frontpage .top_topics_area .slick-slide img {
  width: 100%;
}
.top_topics_area .topics_tl {
  font-size: 1.7rem;
  margin-top: 5px;
  line-height: 1.5;
}
.frontpage .top_topics_area .slick-slide {
  margin-left: 1.3vw;
  margin-right: 1.3vw;
}
.top_topics_area .mod_label_panel_02 figure+dl&gt;dt {
  font-size: 3.4vw;
  padding: 1vw 3vw 1.2vw;
  line-height: 1.7;
}
.top_topics_area .mod_label_panel figure {
  height: 32vw;
}
.top_topics_area .top_topics_list {
  margin-top: 0;
}
.top_topics_area {
  padding-bottom: 0px;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
side_nav
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.side_nav_wrap {
  overflow: inherit;
  margin-top: 30px !important;
}

.side_nav_con {
  float: none;
  width: 100%;
}

.side_nav_side {
  float: none;
  width: 100%;
  margin-top: 60px;
}

.side_nav_side .side_nav_side_inner {
  width: 100%;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
online
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.online_page_bnr {
  margin-bottom: 20px;
}

.online_section .ls_mini  {
  letter-spacing: -1px;
}

.online_sent p+p, .online_sent .pstyle+.pstyle, .online_sent p+.pstyle, .online_sent p+.pstyle {
  margin-top: 2em;
}

.online_mv:before,
.online_mv:after {
  display: none;
}

.online_mv_inner {
  padding: 15px;
  width: auto;
}

.online_mv_anchor {
  display: block;
  margin-top: -8%;
  padding: 0 10px;
}

.online_mv_anchor a {
  width: 100%;
}

.online_mv_anchor a + a {
  margin-top: 3%;
}

.online_section {
  padding: 50px 0;
}

.online_section .inner {
  width: 100%;
}

.online_media {
  display: block;
}

.online_media_img {
  width: 100%;
}

.online_media_text {
  margin-top: 25px;
  width: 100%;
}

.online_row {
  display: block;
}

.online_row_item {
  width: 100%;
}

.online_row_item + .online_row_item {
  margin-top: 50px;
}

.online_step_table p + p {
  margin-top: 1em;
}

.online_step_table th, .online_step_table td {
  padding: 15px;
}

.online_step_table th {
  vertical-align: top;
  width: 100%;
}

.online_section_ttl {
  font-size: 3.6rem;
}

.online_date_block {
  margin-bottom: 40px;
  display: block;
}

.online_date_block dt,
.online_date_block dd {
  font-size: 1.3rem;
  padding: 6px 15px;
  text-align: left;
  letter-spacing: normal;
}

.online_date_block dt {
  border-right: 0;
  border-bottom: 1px solid #fff;
  width: 100%;
}

.online_experience_inner {
  width: 100%;
}

.online_btn_disable.btn_style .in,
.online_btn_color.btn a {
  font-size: 3rem;
  padding: 5px 15px;
}

.online_btn_disable.btn_style .in span,
.online_btn_color.btn span {
  font-size: 1.1rem;
}

.online_btn_white.btn a {
  width: 100%;
  font-size: 1.3rem;
}

.online_pull_footer {
  margin-bottom: -80px;
  padding-bottom: 200px;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
404
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/

.page_404 .lead_404 {
  text-align: left;
}

.page_404 .btn {
  text-align: center;
}


/***************************************************************************************
------------------------------
pagetop / footer
------------------------------
*****************************/

.pagetop {
  width: 70px;
  bottom: 60px;
  height: 63px;
  padding: 15px 17px;
}

.pagetop img {
  width: 31px;
}

footer {
  margin-top: 80px;
  padding-bottom: 20px;
}

footer .inner {
  padding: 25px;
  flex-direction: column;
}

footer .f_logo,
footer .f_logo img {
  width: 120px;
}

footer .nav {
  margin-top: 15px;
  margin-left: 0;
  justify-content: space-between;
}

footer .nav li {
  width: 48%;
  font-size: 3.4vw;
}

footer .nav li+li {
  margin-left: 0;
}

footer .nav a {
  padding-top: 5px;
  padding-bottom: 5px;
}

footer .copyright {
  margin-right: auto;
}

footer .copyright .small {
  margin-right: inherit;
  padding: 5px 0;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TOPアニメーション
________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.jiyuu_area.bg_block:before {
  left: auto;
  -webkit-animation: jiyuu_left 9s ease-in-out 0s infinite alternate;
  animation: jiyuu_left 9s ease-in-out 0s infinite alternate;
}
.jiyuu_area.bg_block:after {
  right: auto;
  -webkit-animation: jiyuu_right 7s ease-in-out 0s infinite alternate;
  animation: jiyuu_right 7s ease-in-out 0s infinite alternate;
}
.kagaku_area.bg_block .bg_block_in:before {
    bottom: -652px;
    left: -50%;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
}
.shinro_area.bg_block:before {
  height: 36%;
}
.shinro_area.bg_block:after {
  height: 35%;
}
.himitsu_area.bg_block:before {
  top: 11%;
  right: 40%;
  right: -webkit-calc(50% - 200px);
  right: calc(50% - 200px);
  width: 500px;
  height: 362px;
}
.himitsu_area.bg_block:after {
  bottom: -8%;
  width: 558px;
  height: 408px;
}
.factory_area.bg_block:after {
  top: -50vw;
  left: 75%;
  left: -webkit-calc(70vw);
  left: 70vw;
  width: 80vw;
  height: 80vw;
}
.factory_area.bg_block:before {
  top: 3vw;
  left: 70%;
  left: -webkit-calc(66vw);
  left: 66vw;
  border-radius: 50%;
  width: 40vw;
  height: 40vw;
  transform-origin: top right;
  transform: rotate(60deg);
}
.factory_area.bg_block .bg_block_in:before {
  bottom: -42vw;
  right: 45%;
  right: -webkit-calc(50% - 10vw);
  right: calc(50% - 10vw);
  border: 7vw solid #f5f0fa;
  width: 118vw;
  height: 118vw;
}
.jiten_area.bg_block:before {
  top: -7%;
  right: 25%;
  width: 480px;
  height: 516px;
}
.jiten_area.bg_block:after {
  left: 20%;
  width: 445px;
  height: 448px;
}

@-webkit-keyframes jiyuu_left {
  from {
    right: -100vw;
  }
  to {
    right: 40vw;
  }
}

@keyframes jiyuu_left {
  from {
    right: -100vw;
  }
  to {
    right: 40vw;
  }
}

@-webkit-keyframes jiyuu_right {
  from {
    left: -100vw;
  }
  to {
    left: 40vw;
  }
}

@keyframes jiyuu_right {
  from {
    left: -100vw;
  }
  to {
    left: 40vw;
  }
}


@keyframes factory_right1 {
  from {
    transform-origin: top right;
    transform: rotate(60deg);
  }
  to {
    transform-origin: top right;
    transform: rotate(-40deg);
  }
}
</pre></body></html>