@charset "utf-8";
/* CSS Document */
@import url('https://use.fontawesome.com/releases/v5.6.1/css/all.css');
@import url('https://unpkg.com/aos@2.3.1/dist/aos.css');
@import url('https://fonts.googleapis.com/css2?family=Merriweather+Sans:wght@600;800&display=swap');
/*
Theme Name: BusinessPress-child
Theme URI: https://businesspress.jp/theme/
Author: BusinessPress
Author URI: https://businesspress.jp/
Template: businesspress
Description: BusinessPress ia a simple and beautiful business WordPress theme. You can create a website of corporate, group, freelance and so on.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: businesspress-child
Tags: one-column, two-columns, right-sidebar, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, microformats, post-formats, sticky-post, theme-options, threaded-comments, translation-ready
*/
html {
  font-size: 15px;
}
:root {
  --color-main-background: #FEF9F2;
  --color-text: #857e7b;
  --color-link: #cc444b;
  --color-heading: #f39518;
  --color-red: #FF0000;
  --color-shadow: 0px 3px 6px rgba(29, 29, 41, .3);
}
body {
  background: repeating-linear-gradient(-45deg, rgba(204, 204, 204, .15), rgba(204, 204, 204, .15) 5px, transparent 5px, transparent 15px), #fff;
  background-size: 21px 21px;
  color: var(--color-text);
}
#content {
  -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
  animation: fadeIn 1.5s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
.top-bar-content, .main-header-content, .featured-entry-content, .home-header-content, .jumbotron-content, .site-content, .container-content, .footer-widget-content, .site-bottom-content {
  max-width: 1200px;
}
.content-area {
  margin-bottom: 0;
}
a, a img {
  transition: all .6s;
  text-decoration: none;
}
a:hover {
  color: var(--color-link);
}
a:hover img {
  opacity: .6;
}
ul {
  list-style: none;
}
h2.common_heading, h2.oem_common_heading, #top_news h3, #top_contents h3, #link_area h3, #link_area h4 {
  font-family: 'Merriweather Sans', sans-serif;
  letter-spacing: 1.5px;
}
h2.common_heading, h2.oem_common_heading {
  color: var(--color-heading);
  text-align: center;
  margin-top: 0;
  margin-bottom: 2.6rem;
  line-height: 1.2;
  letter-spacing: 0.2rem;
}
h2.common_heading {
  font-size: 4rem;
}
h2.common_heading .sub_heading_ja, h2.oem_common_heading .sub_heading {
  display: block;
}
h2.common_heading .sub_heading_ja, h2.oem_common_heading .sub_heading, #top_news h3 .sub_heading, #link_area #brand .sub_h4, #link_area #oem .sub_h4, #link_area #contact .sub_h4 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  letter-spacing: 0.5px;
}
h2.common_heading .sub_heading_ja {
  font-size: 1.3rem;
  color: var(--color-text);
}
.common_description {
  text-align: center;
  font-size: 1.25rem;
  margin-bottom: 4rem;
}
.full_width {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}
#news_list, #news_single, #brand-page, #brand_contents, #product_details, #event-page, #event_details, #oem-page, #oem-for_brand, #oem-directly, #oem-for_planning, #contact-page, #company, #site-policy {
  padding-bottom: 8rem;
}
.sp_320 {
  display: none;
}
.pc_br {
  display: block;
}
/* パンくずリスト */
.breadcrumb-area {
  width: calc(100vw - 80px);
  margin: 1rem auto 3rem;
  font-size: 1rem;
}
/* flexbox - 一行 */
#main_menu .main_menu_wrap, .top_news_wrap li, .news-page_wrap li, #top_contents .youtube_twitter_wrap, #link_area .flex, #event_details .event_date_place dl, .to_ask_list {
  display: flex;
}
/* flexbox - 複数(改行あり) */
ul.event_list_past, ul.brand_list, ul.series_list, ul.oem_brand_list, ul.footer_link {
  display: flex;
  flex-wrap: wrap;
}
/* header */
.site-header {
  border-bottom: 20px solid var(--color-text);
  margin-bottom: 0;
}
.main-header {
  background: var(--color-main-background);
  padding-top: 25px;
  padding-bottom: 25px;
}
.main-header-clone {
  background: var(--color-main-background);
}
/* nav PC */
.menu-nav-container ul {
  color: #302D2C;
}
.main-navigation {
  line-height: 1;
  font-weight: 600;
}
@media screen and (min-width: 980px) {
  .main-navigation ul li + li {
    margin-left: 10px;
  }
  .main-navigation li a:not(.nav_twitter) {
    padding-left: 5px;
    padding-right: 5px;
  }
  .main-navigation div.menu > ul > li:first-child > a, .main-navigation ul.menu > li:first-child > a {
    padding-left: 5px;
  }
  .main-navigation li:not(.nav_twitter) a:hover {
    color: var(--color-link);
    position: relative;
  }
  .main-navigation li:not(.nav_twitter) a::after {
    position: absolute;
    bottom: -5px;
    left: 0;
    content: '';
    width: 100%;
    height: 2px;
    background: var(--color-heading);
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
  }
  .main-navigation li a:hover::after {
    transform: scale(1, 1);
  }
}
/* nav mobile */
.drawer-hamburger, .drawer-hamburger:hover, .drawer-hamburger:focus {
  padding: 15px 7px;
  background: var(--color-text);
  border-radius: 0;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
  background-color: #fff;
}
.drawer-navigation {
  background: rgba(133, 126, 123, 0.9);
  width: 90vw;
}
.drawer-navigation-content {
  padding-left: 0;
  padding-right: 0;
}
.drawer-navigation ul {
  color: #fff;
  text-align: center;
}
.drawer-navigation ul li {
  padding-bottom: 0;
  padding-top: 0;
  transition: all .6s;
}
.drawer-navigation ul li a {
  padding: 1rem 0;
}
.drawer-navigation ul li a {
  display: block;
}
.drawer-navigation ul li.nav_twitter a {
  display: inline-block;
}
.drawer-navigation ul li:hover:not(.nav_twitter) {
  background: var(--color-text);
}
.drawer-navigation ul li a:hover {
  color: #fff;
}
.menu a[href*="twitter.com"]:before {
  color: #1DA1F2;
  transition: all .6s;
}
.menu a[href*="twitter.com"]:hover:before {
  opacity: .6;
}
.drawer-navigation ul li.nav_twitter a[href*="twitter.com"]:before {
  color: #fff;
  margin-right: 0;
}
.drawer-navigation ul li.nav_twitter a[href*="twitter.com"]:hover:before {
  color: #fff;
}
/* front-page */
#main_menu .full_width {
  background: url("images/top_board.png")no-repeat center top;
  background-size: cover;
  text-align: center;
  padding: 150px 0;
  border-bottom: 20px solid var(--color-text);
}
#main_menu h2 {
  color: #fff;
  font-size: 3.3rem;
  line-height: 2;
  text-shadow: var(--color-shadow);
  margin-top: 0;
  letter-spacing: 2px;
}
#main_menu h2 .under_line {
  background: linear-gradient(transparent 60%, rgba(243, 149, 24, .7) 60%);
}
#main_menu .main_menu_wrap {
  justify-content: space-between;
  width: 80%;
  margin: 0 auto;
}
#main_menu .main_menu_wrap .link_box {
  width: calc(100% / 3 - 3%);
}
#main_menu .main_menu_wrap .link_box a {
  font-size: 1.6rem;
  color: #FFF;
  text-shadow: var(--color-shadow);
  box-shadow: var(--color-shadow);
  font-weight: 600;
  border: 3px #fff solid;
  margin-right: 4.5%;
  display: block;
  padding: 35% 0;
  position: relative;
}
#main_menu .main_menu_wrap .link_box a:hover {
  background: rgba(243, 149, 24, .7);
}
#main_menu .main_menu_wrap .link_box a::before, #main_menu .main_menu_wrap .link_box a::after {
  content: "";
  position: absolute;
  transition: all .6s;
}
#main_menu .main_menu_wrap .link_box a::before {
  display: inline-block;
  background: url("images/triangle.png")no-repeat;
  background-size: contain;
  width: 54px;
  height: 50px;
  left: calc(50% - 27px);
  bottom: -27px;
}
#main_menu .main_menu_wrap .link_box a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, .25), rgba(255, 255, 255, .25) 1px, transparent 1px, transparent 7px);
  background-size: 10px 10px;
  width: 100%;
  height: 100%;
}
#main_menu .main_menu_wrap .link_box a:hover::before {
  transform: translate(0, 10px);
}
#main_menu .main_menu_wrap .link_box a:hover::after {
  transform: translate(10px, 10px);
}
#main_menu .main_menu_wrap .link_box:last-child {
  margin-right: 0;
}
#main_menu .triangle {
  display: none;
}
/* news */
#top_news {
  margin: 80px auto;
  border-bottom: 2px solid var(--color-link);
}
#top_news h3, #top_contents .youtube_twitter_wrap h3, #link_area h3 {
  color: var(--color-heading);
  font-size: 3.2rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1.5rem;
  display: flex;
}
#top_news h3 {
  align-items: baseline;
}
#top_news h3::after, #top_contents .youtube_twitter_wrap h3::after, #link_area h3::after {
  border-top: 2px solid var(--color-link);
  content: "";
  flex-grow: 1;
}
#top_news h3::after {
  margin-left: 1rem;
}
#top_news h3 .sub_heading {
  display: inline-block;
  color: var(--color-text);
  font-size: 1.3rem;
  margin-left: 1rem;
}
.top_news_wrap {
  margin-left: 0;
  margin-bottom: 1.5rem;
}
.top_news_wrap li, .news-page_wrap li {
  align-items: baseline;
}
.top_news_wrap li + li {
  margin-top: 1.5rem;
}
.date, .news_title {
  display: inline-block;
  font-size: 1.2rem;
}
.date, .news_title {
  margin-left: 1rem;
  margin-bottom: 0;
}
.news_title {
  width: calc(100% - 20rem);
}
.news_category {
  color: #fff;
  font-size: 1rem;
  display: inline-block;
  min-width: 8rem;
  padding: 0.2rem 1rem;
  text-align: center;
  line-height: 1.2;
}
.news_info {
  background: var(--color-heading);
}
.news_item {
  background: #857e7b;
}
.news_quote_strap {
  background: #6b9031;
}
.news_kemomimi {
  background: #a04194;
}
.news_can_badge {
  background: #eac12a;
}
.news_charatoria {
  background: #c8669c;
}
.news_corocot {
  background: #428e8b;
}
.news_kakesuta {
  background: #162242;
}
.to_news_list {
  text-align: right;
  margin-bottom: 1rem;
}
.to_news_list a {
  font-size: 1rem;
  position: relative;
  vertical-align: middle;
  padding-right: 1.5rem;
}
.to_news_list a:hover {
  padding-right: 1rem;
}
.to_news_list a::before {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 4px;
  height: 4px;
  border-top: 1px solid var(--color-heading);
  border-right: 1px solid var(--color-heading);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: all .6s;
}
.to_news_list a:hover::before {
  border-color: var(--color-link);
}
/* News一覧 */
#news_list h3, #event-page h3, #company h3 {
  position: relative;
  color: var(--color-heading);
  font-size: 1.5rem;
  padding-left: 2rem;
  margin-top: 0;
}
#news_list h3, #event-page h3 {
  border-bottom: 2px solid var(--color-link);
  padding-bottom: 0.8rem;
}
#news_list h3 {
  letter-spacing: 0.1rem;
}
#news_list h3::before, #event-page h3::before, #event_details h3.event_heading::before, #brand_contents h3.brand_heading::before, #brand_contents h3.series_heading::before, #product_details .product_detail h3.product_heading::before, #company h3::before {
  font-family: "Font Awesome 5 Free";
  content: '\f04b';
  font-weight: 900;
  vertical-align: middle;
  position: absolute;
  left: 0;
}
#news_list h3::before {
  margin-right: 1rem;
}
#news_list ul {
  margin-bottom: 4rem;
}
#news_list .news-page_wrap li + li {
  margin-top: 1rem;
}
/* news_single */
#news_single div + h3.news_title {
  margin-top: 1rem;
}
#news_single h3.news_title {
  font-size: 1.6rem;
  margin-left: 0;
  color: var(--color-text);
  width: 100%;
}
#news_single h3.news_title + div, #news_single .youtube_wrap + p, #news_single .news_content p + .youtube_wrap {
  margin-top: 0.5rem;
}
#news_single .news_content p, #news_single .error p {
  font-size: 1.2rem;
  margin-bottom: 0;
}
#news_single article + .navi-pre-next {
  margin-top: 1rem;
}
#news_single .navi-pre-next {
  justify-content: space-between;
  font-size: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #e9e9e9;
}
/**/
.triangle_back, .triangle_back_02 {
  background: var(--color-text);
  padding: 10px;
  position: relative;
  z-index: 1;
}
.triangle_back {
  margin-bottom: 2.3%;
}
.triangle_back_02 {
  margin-top: 2.3%;
}
.triangle_back::after, .triangle_back_02::before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  position: absolute;
  left: 0;
}
.triangle_back::after {
  padding-top: 2.3%;
  top: 95%;
  background:
    linear-gradient(to bottom left, var(--color-text) 49%, transparent 51%);
}
.triangle_back_02::before {
  padding-bottom: 2.3%;
  bottom: 95%;
  background:
    linear-gradient(to top left, var(--color-text) 49%, transparent 51%);
}
/**/
#top_contents .youtube_twitter_wrap {
  justify-content: space-between;
}
#youtub_area, #twitter_area {
  width: 47%;
}
#top_contents .youtube_twitter_wrap h3, #link_area h3 {
  align-items: center;
}
#top_contents .youtube_twitter_wrap h3::after, #link_area h3::after {
  margin-left: 2rem;
}
.movie_inner {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
}
.movie_inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#top_contents .youtube_twitter_wrap + #link_area {
  margin-top: 8rem;
}
#top_contents {
  padding: 8rem 0;
}
/* link_area */
#link_area {
  background: url('images/three-point_reader.png') no-repeat;
  background-position: top center;
  padding-top: calc(76px + 4rem);
}
#link_area #business_heading {
  display: none;
}
#link_area ul {
  margin: 0;
}
#link_area ul li + li {
  margin-top: 5em;
}
#link_area .flex figure {
  width: 27.5%;
}
#link_area .link_area_contents {
  width: 65%;
  align-self: center;
}
#oem .flex {
  flex-direction: row-reverse;
}
#brand .flex figure, #contact .flex figure {
  margin-right: 7.5%;
}
#contact .flex figure img {
  border: 6px solid var(--color-heading);
  box-sizing: border-box;
}
#oem .flex figure {
  margin-left: 7.5%;
}
#brand, #contact {
  background: url("images/line_red.png")no-repeat;
  background-position: right -2px center;
}
#oem {
  background: url("images/line_gray.png")no-repeat;
  background-position: left center;
}
#link_area h4 {
  font-size: 3.3rem;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
#link_area #brand h4, #link_area #contact h4 {
  color: var(--color-heading);
}
#link_area .sub_h4 {
  font-size: 1.6rem;
  display: inline-block;
  text-indent: 1rem;
  vertical-align: middle;
}
#link_area #brand .sub_h4, #link_area #contact .sub_h4 {
  color: var(--color-text);
}
#link_area #oem h4, #link_area #oem .sub_h4, #link_area #oem p {
  color: #fff;
}
#link_area p {
  font-size: 1.25rem;
}
#link_area .read_more {
  text-align: right;
}
#link_area a {
  font-family: 'Merriweather Sans', sans-serif;
  display: inline-block;
  border: solid 2px var(--color-heading);
  font-size: 1rem;
  padding: 1rem 2rem 0.9rem;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 50%, var(--color-heading) 50%);
  background-position: 0 0;
  background-size: 200% auto;
}
#link_area a:hover {
  cursor: pointer;
  background-position: -100% 0;
  color: #fff;
}
/* Event */
#event-page section + section {
  margin-top: 8rem;
}
#event-page ul {
  margin-left: 0;
  margin-bottom: 0;
}
ul.event_list_holding li + li {
  margin-top: 10px;
}
ul.event_list_past {
  justify-content: flex-start;
}
ul.event_list_past li {
  width: calc(50% - 5px);
}
ul.event_list_past li:nth-child(2n) {
  margin-left: 10px;
}
ul.event_list_past li:first-child, ul.event_list_past li:nth-child(2) {
  margin-top: 0;
}
ul.event_list_past li:not(:first-child):not(:nth-child(2)) {
  margin-top: 10px;
}
/* single-events */
#event_details h3.event_heading, #brand_contents h3.brand_heading, #brand_contents h3.series_heading, #product_details .product_detail h3.product_heading {
  padding-left: 2rem;
  margin-top: 3rem;
  margin-bottom: 1rem;
  color: var(--color-text);
  font-size: 1.5rem;
  vertical-align: middle;
  position: relative;
}
#event_details h3.event_heading::before, #brand_contents h3.brand_heading::before, #brand_contents h3.series_heading::before, #product_details .product_detail h3.product_heading::before {
  color: var(--color-heading);
}
#event_details .event_description, #event_details .campaign_text, #event_details .benefit_text, #event_details .notice_text, #brand_contents .brand_description, .product_detail p {
  font-size: 1rem;
  margin-left: 2rem;
}
#event_details .event_youtebe_wrap, #product_details .product_youtebe_wrap, #news_single .youtube_wrap {
  width: 50%;
}
.event_date_place {
  font-size: 1rem;
  margin: 3rem 0;
  padding: 1.5rem 0;
  border-top: 2px solid #D6D6D6;
  border-bottom: 2px solid #D6D6D6;
}
.event_date_place dl + dl {
  margin-top: 0.5rem;
}
.event_date_place dl dt, .event_date_place dl dd {
  margin: 0;
}
/*.event_date_place dl dt {
  width: 5em;
}*/
.event_date_place dl dd {
  width: calc(100% - 5.5em);
}
.campaign_image + .campaign_text, .benefit_image + .benefit_text {
  margin-top: 1rem;
}
.campaign_image, .benefit_image, .lineup_image {
  text-align: center;
  margin-left: 2rem;
}
.lineup_image figure + figure {
  margin-top: 1rem;
}
/* Brand */
ul.brand_list {
  width: 80%;
  margin: 0 auto;
  justify-content: space-between;
}
ul.brand_list li {
  width: 45%;
}
/* brand taxonomy個別ぺージ */
#brand_contents .main_image {
  text-align: center;
}
ul.series_list {
  margin: 0;
}
ul.series_list li {
  width: calc(100% / 4 - 1.5rem);
  margin-bottom: 1rem;
}
ul.series_list li {
  margin-right: 2rem;
}
ul.series_list li:nth-child(4n) {
  margin-right: 0;
}
/* single-brand */
.product_youtebe_wrap {
  margin-bottom: 2rem;
  margin-left: 1.5rem;
}
.product_table {
  font-size: 1rem;
}
.product_table dl {
  display: table;
  border-collapse: separate;
  border-spacing: 5px 0px;
  width: 100%;
  vertical-align: middle;
}
.product_table dl + dl {
  margin-top: 5px;
}
.product_table dl dt, .product_table dl dd {
  display: table-cell;
  padding: 1rem;
  box-sizing: border-box;
  vertical-align: middle;
}
.product_table dl dt {
  background: var(--color-heading);
  color: #fff;
  width: 20%;
}
.product_table dl dd {
  width: 80%;
  background: #E8E8E8;
}
.product_table dl dd a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 600;
  margin-left: 0.3rem;
  margin-right: 0.5rem;
}
/* taxonomy-brand_category-other */
#brand_other_wrap h3.series_heading {
  color: var(--color-heading);
  border-bottom: 2px solid var(--color-link);
  padding-bottom: 0.8rem;
  margin-bottom: 1.5rem;
}
/* oem */
#oem-page section + section, #contact-page section + section, #company section + section, #site-policy section + section {
  margin-top: 4rem;
  padding-top: 4rem;
  border-top: 2px solid #d6d6d6;
}
#oem-for_brand .inner, #oem-directly .inner, #oem-for_planning .inner, #company .inner, #contact-page .inner, #site-policy .inner {
  width: 70%;
  margin: 0 auto;
}
ul.to_ask_list {
  justify-content: space-between;
  margin: 0;
}
ul.to_ask_list li {
  width: 30%;
  text-align: center;
  font-weight: 900;
  font-size: 1.6rem
}
ul.to_ask_list li a {
  padding: 1.5rem 0;
  color: #fff;
  background-image: linear-gradient(to right, #858585 50%, rgba(255, 255, 255, 1) 50%);
  background-position: 0 0;
  background-size: 200% auto;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border: solid #858585 2px;
  box-sizing: border-box;
}
ul.to_ask_list li a:hover {
  background-position: -100% 0;
  color: #858585;
}
.flow {
  width: 60%;
  margin: 0 auto;
}
.flow h3 {
  color: var(--color-text);
  border: 1px solid var(--color-text);
  border-radius: 30px;
  width: 50%;
  text-align: center;
  margin: 0 auto;
  padding: 0.5rem 0;
  font-size: 1.6rem;
}
.flow h3 + ol {
  margin-top: 2rem;
  margin-left: 0;
  margin-bottom: 0;
}
.flow ol li {
  font-weight: 900;
  padding: 0.3rem 1rem;
  list-style: none;
  text-align: center;
  background: #E6E6E6;
  position: relative;
}
.flow ol li:not(:last-child)::after {
  font-family: "Font Awesome 5 Free";
  content: '\f04b';
  font-weight: 900;
  vertical-align: middle;
  transform: rotate(90deg);
  position: absolute;
  left: 50%;
  bottom: -2.2rem;
}
.flow ol li + li {
  margin-top: 2rem;
}
.flow ol li .available {
  font-size: 50%;
  display: block;
  margin-top: -0.3rem;
  font-weight: 500;
}
ul.oem_brand_list {
  margin: 0 0 2.6rem 0;
  justify-content: space-between;
}
ul.oem_brand_list li {
  width: calc(100% / 3 - 1rem);
}
h2.oem_common_heading {
  font-size: 3.2rem;
}
h2.oem_common_heading .sub_heading {
  font-size: 2rem;
  letter-spacing: 0.1rem;
}
/* contact */
#contact-page figure {
  margin-bottom: 2rem;
}
.thanks_text, .contact_completed {
  border: 2px solid #ddd;
  background: rgba(255, 255, 255, .8);
  padding: 4rem 2rem;
  text-align: center;
  margin-bottom: 4rem;
}
.thanks_text {
  margin-bottom: 4rem;
}
#contact-page .inner, #company .inner div, #site-policy .inner {
  font-size: 1.25rem;
}
.font_red {
  color: var(--color-red);
}
ul.setting, ul.about {
  list-style: disc;
}
ul.setting {
  margin: 1.5rem 0 1.5rem 1.5em;
}
ul.support {
  margin-left: 0;
}
ul.support li .heading_color, #site-policy dl dt {
  color: var(--color-heading);
  font-size: 1.3rem;
}
ul.support li .heading_color {
  font-weight: 600;
  display: inline-block;
  margin-bottom: 0.5rem;
}
ul.support li + li {
  margin-top: 2rem;
}
ul.about li + li {
  margin-top: 1rem;
}
/**/
#contact-page .inner h3, #oem-for_brand .inner h3, #oem-directly .inner h3, #oem-for_planning .inner h3 {
  color: #707070;
  font-size: 2rem;
  margin-top: 0;
  display: flex;
  align-items: center;
}
#contact-page .inner h3::before, #contact-page .inner h3::after, #oem-for_brand .inner h3::before, #oem-for_brand .inner h3::after, #oem-directly .inner h3::before, #oem-directly .inner h3::after, #oem-for_planning .inner h3::before, #oem-for_planning .inner h3::after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}
#contact-page .inner h3::before, #oem-for_brand .inner h3::before, #oem-directly .inner h3::before, #oem-for_planning .inner h3::before {
  margin-right: 1rem;
}
#contact-page .inner h3::after, #oem-for_brand .inner h3::after, #oem-directly .inner h3::after, #oem-for_planning .inner h3::after {
  margin-left: 1rem;
}
/* company */
#company .inner dl {
  display: table;
  width: 100%;
}
#company .inner dl dt, #company .inner dl dd {
  display: table-cell;
}
#company .inner dl + dl, #company .inner ul li + li {
  margin-top: 1rem;
}
#company .inner dl dt {
  width: 20%;
  font-weight: 500;
}
#company .inner ul {
  margin-left: 0;
  margin-bottom: 0;
}
#company ul li a {
  color: var(--color-text);
}
#company ul li a:hover {
  color: var(--color-link);
}
#company ul li a::after {
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 600;
  margin-left: 0.5rem;
  font-size: 1rem;
  vertical-align: text-bottom;
}
/* お問い合わせフォーム */
input[type="text"], input[type="number"], input[type="email"], input[type="tel"], textarea {
  display: block;
  height: 3rem;
  margin-bottom: 0;
  padding: 0 1rem;
  border-radius: 3px;
  border: 1px solid #ddd;
  background-color: #eff1f5;
  box-shadow: none;
  color: #5c6b80;
  font-size: 1.2rem;
  vertical-align: middle;
  line-height: 3;
}
textarea {
  max-width: 100%;
  line-height: 1.5;
  padding: 0.7rem 1rem;
  min-height: 14rem;
  overflow: auto;
}
::placeholder {
  color: #999;
}
form dl + dl {
  margin-top: 1.5rem;
}
form dt:not(.textarea_dt) {
  margin-bottom: -0.5rem;
}
form dt.textarea_dt {
  margin-bottom: 0.3rem;
}
form dd {
  margin-left: 0;
  margin-bottom: 0;
}
form .button_area {
  margin-top: 1.5rem;
}
#contact-page form {
  margin-bottom: 4rem;
}
/* site-policy */
#site-policy dl dd {
  margin-left: 0;
}
#site-policy p.address {
  margin-left: 1rem;
  margin-bottom: 0;
}
/* footer */
.site-bottom_wrap {
  background-color: var(--color-main-background) !important;
  padding-bottom: 2rem;
  padding-top: 3rem;
}
ul.footer_link {
  justify-content: flex-start;
  margin: 0;
  align-items: center;
}
ul.footer_link li {
  width: calc(100% / 6 - 3%);
}
ul.footer_link li {
  margin-right: 3.6%;
}
ul.footer_link li:last-of-type {
  margin-right: 0;
}
.footer_link + .full_width {
  margin-top: 100px;
}
.footer_bottom {
  font-size: 85%;
  text-align: center;
}
.site-bottom {
  border: none;
  padding-bottom: 0;
}
.footer-navigation {
  float: none;
}
.menu-item a:hover {
  color: var(--color-link);
}
/* back_to_top */
.back-to-top {
  background: none;
  width: 122px;
  height: 58px;
}
.back-to-top:hover {
  background: none;
}
.back-to-top:before {
  content: "";
  background-image: url("images/mouse_to_top.png");
  background-repeat: no-repeat;
  background-size: contain;
  width: 122px;
  height: 58px;
  display: inline-block;
}
.back-to-top:hover:before {
  animation: mouse 2s infinite;
}
@keyframes mouse {
  0% {
    transform: translate(0px, 2px);
  }
  5% {
    transform: translate(0px, -2px);
  }
  10% {
    transform: translate(0px, 2px);
  }
  15% {
    transform: translate(0px, -2px);
  }
  20% {
    transform: translate(0px, 2px);
  }
  25% {
    transform: translate(0px, -2px);
  }
  30% {
    transform: translate(0px, 0px);
  }
}
@media screen and (max-width: 896px) {
  ul.footer_link li {
    width: calc(100% / 3 - 3%);
  }
  ul.footer_link li {
    margin-right: 4.5%;
  }
  ul.footer_link li:nth-of-type(3n) {
    margin-right: 0;
  }
  ul.footer_link li:first-of-type, ul.footer_link li:nth-of-type(2), ul.footer_link li:nth-of-type(3) {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  /* flex */
  #link_area .flex, #top_contents .youtube_twitter_wrap, #link_area #business_heading {
    display: block;
  }
  /* front-page */
  #main_menu .full_width {
    padding: 100px 0;
  }
  #main_menu .main_menu_wrap {
    display: none;
  }
  #main_menu h2 {
    font-size: 2.5rem;
    margin-bottom: 1rem;
  }
  #main_menu .triangle {
    display: block;
  }
  #youtub_area, #twitter_area {
    width: 100%;
  }
  #youtub_area + #twitter_area {
    margin-top: 5rem;
  }
  #link_area {
    background: none;
    padding-top: 0;
  }
  /* パンくずリスト */
  .breadcrumb-area {
    width: calc(100vw - 40px);
  }
}
@media screen and (max-width: 480px) {
  #news_list, #news_single, #brand-page, #brand_contents, #product_details, #oem-page, #contact-page, #company, #site-policy {
    padding-bottom: 4rem;
  }
  .pc_br {
    display: none;
  }
  /* width100% */
  #news_single .youtube_wrap, #event-page ul.event_list_past li, #event_details .event_youtebe_wrap, #product_details .product_youtebe_wrap, ul.brand_list, ul.brand_list li, #contact-page .inner, #oem-page ul.to_ask_list li, #oem-page .flow, #oem-for_brand .inner, #oem-directly .inner, #oem-for_planning .inner, #company .inner, #site-policy .inner, ul.footer_link li {
    width: 100%;
  }
  /**/
  .common_description {
    margin-bottom: 2rem;
  }
  /* flex */
  #top_news .top_news_wrap li, #news_list .news-page_wrap li {
    display: block;
  }
  /* front-page */
  #top_contents .youtube_twitter_wrap + #link_area {
    margin-top: 4rem;
  }
  #top_news .top_news_wrap .news_title, #news_list .news-page_wrap .news_title {
    width: 100%;
    display: block;
    margin-top: 0.5rem;
    margin-left: 0;
  }
  /* event */
  #event-page ul.event_list_past li:first-child, ul.event_list_past li:nth-child(2) {
    margin-top: 10px;
  }
  /* brand 各ブランド個別ページ */
  #brand_contents h3.brand_heading, #brand_contents h3.series_heading, #product_details .product_detail h3.product_heading {
    margin-top: 1.5rem;
  }
  /* brand taxonomy個別ぺージ */
  ul.series_list li {
    width: calc(100% / 2 - 0.5rem);
  }
  ul.series_list li:not(:nth-child(2n)) {
    margin-right: 1rem;
  }
  ul.series_list li:nth-child(2n) {
    margin-right: 0;
  }
  .product_youtebe_wrap {
    margin-left: 0;
  }
  /* oem */
  #oem-page ul.to_ask_list {
    flex-wrap: wrap;
  }
  #oem-page ul.to_ask_list li + li {
    margin-top: 1rem;
  }
  /* oem for_brand */
  #oem-for_brand ul.oem_brand_list li {
    width: calc(50% - 5px);
  }
  /* footer */
  ul.footer_link {
    display: block;
  }
  ul.footer_link {
    text-align: center;
  }
  ul.footer_link li a img {
    max-width: 300px;
    max-height: 35px;
  }
  ul.footer_link li {
    margin-right: 0;
  }
  ul.footer_link li:first-of-type, ul.footer_link li:nth-of-type(2), ul.footer_link li:nth-of-type(3) {
    margin-bottom: 0;
  }
  ul.footer_link li + li {
    margin-top: 40px;
  }
  /* back_to_top */
  .back-to-top {
    width: 85.4px;
    height: 40.6px;
    right: 10px;
  }
  .back-to-top:before {
    width: 85.4px;
    height: 40.6px;
  }
}
@media screen and (max-width: 375px) {
  .sp_320 {
    display: block;
  }
}