@charset "UTF-8";
/* 共通変数・プレースホルダー */
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}

/* media query 部 */
@media only screen and (max-width: 767px) {
  /* タグ基本スタイル定義 */
  h1, h2, h3, h4, h5, h6 {
    font-size: 1.6rem;
  }
  h2 {
    font-size: 2.0rem;
  }
  h3 {
    font-size: 1.6rem;
  }
  /* レイアウト：サイト基本構造  */
  html {
    overflow-x: hidden;
  }
  body {
    font-size: 1.4rem;
  }
  .allwrapper {
    width: 100%;
  }
  .scroll {
    width: 100%;
  }
  .scrollwrapper {
    width: 100%;
    padding: 0;
  }
  .header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 60px;
    padding: 0;
    border: none;
  }
  .header .sitename {
    padding: 10px 0 0 15px;
    font-size: 1.6rem;
  }
  .header .sitename a {
    width: 230px;
    height: 40px;
  }
  .header .tagline {
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
    height: 30px;
    margin: 0;
    padding: 8px 0 0 15px;
    background-color: #000;
    color: #fff;
    font-size: 1.1rem;
    line-height: 1.5;
  }
  .header .tagline br {
    display: none;
  }
  .header .contentswidth {
    height: auto;
  }
  /*スマートフォンメニュープルダウン */
  .headermenu {
    left: 0;
    top: 60px;
    width: 100%;
    height: auto;
  }
  .headermenu .contentswidth {
    padding: 0;
  }
  .headermenu .headermenuwrapper {
    display: none;
    opacity: 0;
    width: 100%;
    height: calc(100vh - 60px);
    overflow-y: auto;
    padding: 0;
    background-color: rgba(130, 110, 0, 0.8);
    -webkit-overflow-scrolling: touch;
    scrollbar-color: #aa8e00 transparent;
    scrollbar-width: thin;
  }
  .headermenu .headermenuwrapper::-webkit-scrollbar {
    width: 10px;
  }
  .headermenu .headermenuwrapper::-webkit-scrollbar-thumb {
    background-color: #aa8e00;
    border-radius: 10px;
  }
  .headermenu .headermenuwrapper.is-open {
    display: block;
    opacity: 1;
    animation-duration: 0.5s;
    animation-name: fade-in;
  }
  .headermenu-pulldown {
    display: none;
  }
  .headermainmenu {
    display: block;
    position: static;
    width: 100%;
    height: auto;
    padding: 0;
    background: transparent;
    border: none;
  }
  .headermainmenu > li {
    width: 100%;
  }
  .headermainmenu > li > a {
    height: auto;
    padding: 10px 15px;
    border-bottom: 1px solid #fff;
    text-align: left;
    font-size: 1.6rem;
  }
  .headermainmenu > li > a:link, .headermainmenu > li > a:visited, .headermainmenu > li > a:active {
    color: #fff;
    text-decoration: none;
    border-color: #fff;
    background-color: #826E00;
  }
  .headermainmenu > li > a:hover {
    color: #fff;
    text-decoration: none;
    background-color: #826E00;
  }
  .headermainmenu > li > a > span {
    border: none;
  }
  .headermainmenu > li > a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    width: 15px;
    height: 15px;
    margin-top: -7px;
    border-radius: 50%;
    background: url(../img/arrow_1-wh.png) center center/11px auto no-repeat #D4B100;
  }
  .headermainmenu > li.ringernet a {
    color: #fff;
    text-decoration: none;
    border-color: #fff;
    background-color: #826E00;
  }
  .headermainmenu > li.ringernet a:hover {
    color: #fff;
    text-decoration: none;
    background-color: #826E00;
  }
  .headermainmenu__pulldown ul {
    margin: 0;
    padding: 0;
  }
  .headermainmenu__pulldown li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  }
  .headermainmenu__pulldown a {
    display: block;
    padding: 10px 15px;
  }
  .headermainmenu__pulldown a:link, .headermainmenu__pulldown a:visited, .headermainmenu__pulldown a:active {
    color: #fff;
    text-decoration: none;
    border-color: #fff;
  }
  .headermainmenu__pulldown a:hover {
    color: #fff;
    text-decoration: none;
  }
  .headermainmenuheader {
    top: -60px;
    left: auto;
    right: 0;
    width: 60px;
    height: 60px;
    margin: 0;
    padding: 0;
    font-size: 1rem;
    background: url(../img/headermenu-bg.png) center center/60px auto no-repeat;
  }
  .headermainmenuheader.is-open {
    background-image: url(../img/headermenu-bg-close.png);
    background-color: #7f6a00;
  }
  .headersubmenu {
    position: static;
    padding-bottom: 60px;
  }
  .headersubmenu ul {
    display: block;
  }
  .headersubmenu ul > li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #fff;
  }
  .headersubmenu ul > li > a {
    position: relative;
    display: block;
    padding: 10px 15px;
  }
  .headersubmenu ul > li > a:link, .headersubmenu ul > li > a:visited, .headersubmenu ul > li > a:active {
    color: #fff;
    text-decoration: none;
    border-color: #fff;
    background-color: #826E00;
  }
  .headersubmenu ul > li > a:hover {
    color: #fff;
    text-decoration: none;
    background-color: #826E00;
  }
  .headersubmenu ul > li > a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    width: 15px;
    height: 15px;
    margin-top: -7px;
    border-radius: 50%;
    background: url(../img/arrow_1-wh.png) center center/11px auto no-repeat #D4B100;
  }
  .headersubmenu__lang {
    border: none;
  }
  .headersubmenu__lang > span {
    display: none;
  }
  .headersubmenu__lang .langlist {
    position: static;
    display: flex;
    flex-wrap: wrap;
    background-color: #9f8500;
  }
  .headersubmenu__lang .langlist > li {
    width: 50%;
    padding: 10px 15px;
    color: #fff;
    background-color: transparent;
  }
  .posmenu {
    clear: both;
    display: none;
  }
  .contents {
    position: relative;
    padding-top: 60px;
  }
  .contentsheader {
    margin: 0;
  }
  .contentsheader--three_minutes {
    background: url(../../three_minutes/img/contentsheader-bg-sp.jpg) center center/100% auto no-repeat;
    height: 0;
    padding-top: 100%;
  }
  .contentsheader--workstyle .contentsheader__header {
    padding: 50px 0;
    font-size: 2.4rem;
  }
  .contentsheader--workstyle .contentsheader__header img {
    width: 60%;
  }
  .contentsheader--sagafactory {
    background-size: 120% auto;
    text-align: center;
  }
  .contentsheader--sagafactory .contentsheader__header {
    top: 0;
    left: 0;
    padding: 20px 40px;
  }
  .contentsheader--sagafactory .contentsheader__header img {
    width: 130px;
  }
  .contentsheader--fujioyamafactory {
    background-size: 120% auto;
    text-align: center;
  }
  .contentsheader--fujioyamafactory .contentsheader__header {
    top: 0;
    left: 0;
    padding: 20px 40px;
  }
  .contentsheader--fujioyamafactory .contentsheader__header img {
    width: 130px;
  }
  .contentsheader .contentswidth {
    min-width: 0;
    padding: 20px 15px;
    border-radius: 0;
  }
  .contentsheader__header {
    display: inline;
    margin: 0;
    padding: 0;
    font-size: 2.5rem;
    border-bottom-width: 2px;
  }
  .contentsheader__subheader {
    width: 80%;
    padding: 8px 0 5px;
    font-size: 1.4rem;
  }
  .contentsbody {
    padding: 0 10px;
  }
  .mainsub {
    display: block;
  }
  .mainsub__main {
    width: 100%;
    padding: 0 15px;
  }
  .mainsub__main .mainheader {
    margin: 0;
  }
  .mainsub__sub {
    width: 100%;
  }
  .mainheader {
    margin: 0 15px;
    padding: 50px 0 25px;
  }
  .mainheader__header {
    margin: 0;
    padding: 8px 0 8px 0;
    font-size: 1.8rem;
  }
  .submenu__header {
    height: auto;
    padding: 0 15px 10px 15px;
  }
  .uplink {
    margin: 0 -15px 50px;
    padding: 25px 0 25px;
    background-color: #EFF0F0;
  }
  .uplink a {
    width: 100%;
    min-width: 0;
  }
  .bottommenu {
    padding: 25px 15px;
  }
  .bottommenu__menu > li {
    width: 50%;
  }
  .bottommenu__menu a {
    font-size: 1.8rem;
  }
  .footerbanner > div {
    width: 25%;
    text-align: center;
  }
  .footerbanner > div img {
    height: 40px;
  }
  .footer {
    padding: 0;
    text-align: center;
  }
  .footermenu--pc {
    display: none;
  }
  .footermenu--sp {
    display: block;
    padding: 20px;
  }
  .footermenu--sp ul {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0;
    padding: 0;
    border-top: 1px solid #ccc;
  }
  .footermenu--sp li {
    width: 50%;
    margin: 0;
    padding: 0;
    list-style: none;
    border-bottom: 1px solid #ccc;
  }
  .footermenu--sp li:nth-child(2n-1) {
    border-right: 1px solid #ccc;
  }
  .footermenu--sp a {
    display: block;
    padding: 10px;
  }
  .footermenu--sp a:link, .footermenu--sp a:visited, .footermenu--sp a:active {
    color: #444;
    text-decoration: none;
  }
  .footermenu--sp a:hover {
    color: #000;
    text-decoration: none;
  }
  .footerinfo {
    display: block;
    padding: 20px 60px 20px 10px;
    background-color: #fff;
  }
  .footerinfo__info {
    display: none;
  }
  .footerinfo small {
    width: 100%;
    padding: 0;
    text-align: center;
  }
  .pagetop {
    bottom: 0;
    right: 0;
  }
  /* コンポーネント：サイト内で共通の部品 */
  .slick-prev {
    left: 0px;
  }
  .slick-next {
    right: 0px;
  }
  .fancybox-content {
    max-width: 100%;
  }
  .contentsbody {
    padding: 15px;
  }
  .contentswidth {
    width: 100%;
  }
  .contentswidthnarrow {
    width: 100%;
  }
  .contentsh1 {
    font-size: 1.8rem;
  }
  .contentsh2 {
    font-size: 1.8rem;
  }
  .buttonbox {
    margin: 25px 0;
    text-align: center;
  }
  .button {
    display: block;
    width: 100%;
    margin: 0 0 10px;
    padding: 8px 15px 8px 0;
  }
  .button--large {
    min-width: 0;
  }
  .borderbox {
    margin: 25px 0;
    padding: 15px;
  }
  .photobox {
    float: none;
    margin: 0 0 20px;
  }
  .photobox.width-100px {
    width: 100%;
  }
  .photobox.width-110px {
    width: 100%;
  }
  .photobox.width-120px {
    width: 100%;
  }
  .photobox.width-130px {
    width: 100%;
  }
  .photobox.width-140px {
    width: 100%;
  }
  .photobox.width-150px {
    width: 100%;
  }
  .photobox.width-160px {
    width: 100%;
  }
  .photobox.width-170px {
    width: 100%;
  }
  .photobox.width-180px {
    width: 100%;
  }
  .photobox.width-190px {
    width: 100%;
  }
  .photobox.width-200px {
    width: 100%;
  }
  .photobox.width-210px {
    width: 100%;
  }
  .photobox.width-220px {
    width: 100%;
  }
  .photobox.width-230px {
    width: 100%;
  }
  .photobox.width-240px {
    width: 100%;
  }
  .photobox.width-250px {
    width: 100%;
  }
  .photobox.width-260px {
    width: 100%;
  }
  .photobox.width-270px {
    width: 100%;
  }
  .photobox.width-280px {
    width: 100%;
  }
  .photobox.width-290px {
    width: 100%;
  }
  .photobox.width-300px {
    width: 100%;
  }
  .photobox.width-310px {
    width: 100%;
  }
  .photobox.width-320px {
    width: 100%;
  }
  .photobox.width-330px {
    width: 100%;
  }
  .photobox.width-340px {
    width: 100%;
  }
  .photobox.width-350px {
    width: 100%;
  }
  .photobox.width-360px {
    width: 100%;
  }
  .photobox.width-370px {
    width: 100%;
  }
  .photobox.width-380px {
    width: 100%;
  }
  .photobox.width-390px {
    width: 100%;
  }
  .photobox.width-400px {
    width: 100%;
  }
  .photobox.width-410px {
    width: 100%;
  }
  .photobox.width-420px {
    width: 100%;
  }
  .photobox.width-430px {
    width: 100%;
  }
  .photobox.width-440px {
    width: 100%;
  }
  .photobox.width-450px {
    width: 100%;
  }
  .photobox.width-460px {
    width: 100%;
  }
  .photobox.width-470px {
    width: 100%;
  }
  .photobox.width-480px {
    width: 100%;
  }
  .photobox.width-490px {
    width: 100%;
  }
  .photobox.width-500px {
    width: 100%;
  }
  .photobox--left {
    float: none;
    margin: 0 0 20px;
  }
  .flexcontainer {
    display: block;
    margin: 0;
    padding: 0;
  }
  .flexcontainer > * {
    margin-bottom: 20px;
  }
  .flexcontainer--two > * {
    width: 100%;
  }
  .flexcontainer--three > * {
    width: 100%;
  }
  .flexcontainer--three .flexcontainer__two {
    width: 100%;
  }
  .flexcontainer--four > * {
    width: 100%;
  }
  .flexcontainer--four .flexcontainer__two {
    width: 100%;
  }
  .flexcontainer--four .flexcontainer__three {
    width: 100%;
  }
  /**** 2022/06/06 株主サイトより転記 ***/
  .news__list__item {
    padding: 0 0 18px;
    margin: 0 0 18px;
  }
  .news__list__item > a:hover .excerpt {
    color: #000;
  }
  .news__list__item > * {
    display: block;
    width: 100%;
  }
  .news__list__item > * .postinfo {
    width: 100%;
    margin: 0 0 10px;
  }
  .news__list__item > * .postinfo .date {
    font-size: 1.4rem;
  }
  .news__list__item > * .postinfo .label {
    padding: 2px 12px;
    font-size: 1.1rem;
  }
  .news__list__item > * .excerpt {
    width: 100%;
    padding: 0;
  }
  .newslist {
    margin: 0 -15px 25px;
    padding: 0;
  }
  .newslist > li > * {
    flex-wrap: wrap;
    padding: 10px 15px;
  }
  .newslist__time {
    flex: 0 0 100px;
    text-align: left;
  }
  .newslist__category {
    flex: 0 0 auto;
    text-align: left;
  }
  .newslist__title {
    display: block;
    flex: 0 0 100%;
    padding-left: 0;
  }
  .category {
    display: inline-block;
    text-align: center;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1.2rem;
  }
  .category--press {
    background-color: #2C90E3;
  }
  .irlist {
    margin: 0 -15px 25px;
    padding: 0;
  }
  .irlist > li > * {
    flex-wrap: wrap;
    padding: 10px 15px;
  }
  .irlist__time {
    display: block;
    flex: 0 0 100px;
    text-align: left;
  }
  .irlist__category {
    display: block;
    flex: 0 0 auto;
    text-align: left;
  }
  .irlist__title {
    display: block;
    flex: 0 0 100%;
    padding-left: 0;
  }
  table th.width-10per, table td.width-10per {
    width: 100%;
  }
  table th.width-15per, table td.width-15per {
    width: 100%;
  }
  table th.width-20per, table td.width-20per {
    width: 100%;
  }
  table th.width-25per, table td.width-25per {
    width: 100%;
  }
  table th.width-30per, table td.width-30per {
    width: 100%;
  }
  table th.width-35per, table td.width-35per {
    width: 100%;
  }
  table th.width-40per, table td.width-40per {
    width: 100%;
  }
  table th.width-45per, table td.width-45per {
    width: 100%;
  }
  table th.width-50per, table td.width-50per {
    width: 100%;
  }
  .datatable1 {
    display: block;
    width: auto;
    margin: 0 -15px;
  }
  .datatable1 tbody, .datatable1 tr {
    display: block;
    width: 100%;
  }
  .datatable1 th {
    display: block;
    padding: 10px 15px;
    border: none;
  }
  .datatable1 td {
    display: block;
    padding: 10px 15px;
    border: none;
  }
  .datatable1 tr:first-child th {
    border-top: none;
  }
  .datatable1 tr:first-child td {
    border-top: none;
  }
  .datatable1 th.tal, .datatable1 td.tal {
    text-align: left;
  }
  .datatable1 th.tac, .datatable1 td.tac {
    text-align: center;
  }
  .datatable1 th.tar, .datatable1 td.tar {
    text-align: right;
  }
  .datatable2 {
    display: table;
    width: auto;
    min-width: 100%;
    margin: 0;
    border-top: none;
  }
  .datatable2 th {
    padding: 10px 15px;
  }
  .datatable2 td {
    padding: 10px 15px;
  }
  .datatable3 {
    display: block;
    width: auto;
    margin: 0 -15px;
  }
  .datatable3 tbody, .datatable3 tr {
    display: block;
    width: 100%;
  }
  .datatable3 th {
    display: block;
    padding: 10px 15px;
    border: none;
  }
  .datatable3 td {
    display: block;
    padding: 10px 15px;
    border: none;
  }
  .datatable3 tr:first-child th {
    border-top: none;
  }
  .datatable3 tr:first-child td {
    border-top: none;
  }
  .datatable3 th.tal, .datatable3 td.tal {
    text-align: left;
  }
  .datatable3 th.tac, .datatable3 td.tac {
    text-align: center;
  }
  .datatable3 th.tar, .datatable3 td.tar {
    text-align: right;
  }
  .tablewrapper {
    margin: 0 -15px 0 -15px;
    overflow: auto;
  }
  .tablewrapper::-webkit-scrollbar {
    height: 5px;
    /* スクロールバーの高さ */
  }
  .tablewrapper::-webkit-scrollbar-track {
    background: #F1F1F1;
    /* スクロールバーの背景色 */
  }
  .tablewrapper::-webkit-scrollbar-thumb {
    background: #d6d6d6;
    /* スクロールバーの色 */
  }
  .tablewrapper table {
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }
  .tablewrapper thead {
    border-top: 1px solid #EFF0F0;
  }
  .tablewrapper th, .tablewrapper td {
    white-space: nowrap;
  }
  .contentsh1 {
    font-size: 2.0rem;
  }
  .contentsh1 span {
    padding-bottom: 10px;
  }
  .tac--pconly {
    text-align: left !important;
  }
  .contentshlead {
    margin: 0 0 30px;
  }
  .contentshlead--center {
    text-align: left;
  }
  .pcnone {
    display: inline-block !important;
  }
  .spnone {
    display: none !important;
  }
  .tablewrapper2 {
    width: 50%;
    margin: 0 auto;
  }
  /* プロジェクト：ページ固有の部品 */
  /* TOP */
  .home-topimage {
    padding-top: 78%;
    background-image: url(../../img/topimage_1-sp.jpg?230302);
  }
  .home-noticebox table {
    margin-left: 0px;
  }
  .home-irsoukai .contentswidth {
    display: block;
  }
  .home-irsoukai .ir-soukai {
    width: 100%;
    padding: 0;
  }
  .home-irsoukai .ir-soukai .contentswidth {
    width: auto;
    display: block;
    padding: 0 10px 15px;
  }
  .home-irsoukai .ir-soukai__header {
    padding: 25px 0;
  }
  .home-irsoukai .ir-soukai .ringernet {
    margin: 0 auto 25px;
    max-width: initial;
  }
  .home-irnewrelease {
    width: 100%;
    margin-bottom: 25px;
    padding: 25px 15px 10px;
  }
  .home-irnewrelease .button {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
  }
  .home-brandrelease, .home-inforelease {
    padding: 15px;
    background-color: #EFF0F0;
  }
  .home-brandrelease .contentswidth, .home-inforelease .contentswidth {
    padding: 25px 15px 10px;
  }
  .home-brandrelease .contentswidth .button, .home-inforelease .contentswidth .button {
    position: relative;
    top: auto;
    right: auto;
  }
  .home-inforelease {
    padding-bottom: 25px;
  }
  .home-factory__header {
    font-size: 2.2rem;
  }
  .home-factory__text {
    font-size: 1.4rem;
  }
  .home-factory__image1 {
    margin: 0 -15px;
    padding-top: 50%;
    background-size: auto 100%;
  }
  .home-factory__image2 {
    margin: 0 -15px 10px;
    height: 0;
    padding-top: 33.3%;
    animation: none;
  }
  .home-factory__image3 {
    margin: 0 -15px;
    height: 0;
    padding-top: 33.3%;
    animation: none;
    background-position: 25% center;
  }
  .home-banner .contentswidth {
    display: block;
  }
  .home-banner__uchimura {
    width: 100%;
    margin-bottom: 15px;
  }
  .home-banner__uchimura a {
    padding-top: 35.15%;
    background-image: url(../../img/uchimura-banner-sp.png);
  }
  .home-banner__recruit {
    width: 100%;
    margin-bottom: 15px;
  }
  .home-banner__recruit a {
    padding-top: 35.15%;
    background-image: url(../../img/recruit-banner-sp.png);
  }
  .home-banner__threeminutes {
    width: 100%;
    margin-bottom: 15px;
  }
  .home-banner__threeminutes a {
    padding-top: 35.15%;
    background-image: url("../../img/threeminutes-banner-sp.jpg");
  }
  .home-banner__zaidan a {
    padding-top: 35.15%;
    background-image: url(../../img/zaidan-banner-sp.png);
    background-size: 100% auto;
  }
  .home-banner__zaidan2 {
    width: 100%;
  }
  .home-banner__zaidan2 a {
    padding-top: 35.15%;
    background-image: url(../../img/zaidan-banner-sp.png);
    background-size: 100% auto;
  }
  /* 3分でわかるリンガーハット */
  .threeminutes {
    padding: 0 15px 5px;
  }
  .threeminutes .contentswidth {
    display: block;
  }
  .threeminutes__header {
    width: 100%;
  }
  .threeminutes__body {
    width: 100%;
    margin: 0;
    padding: 30px 0 0;
  }
  .threeminutes .buttonbox {
    padding-top: 0;
  }
  .threeminutes-header {
    display: block;
    margin-bottom: 50px;
  }
  .threeminutes-header__header {
    width: 100%;
    text-align: center;
    padding: 25px 0;
  }
  .threeminutes-header__header img {
    position: static;
    height: 200px;
  }
  .threeminutes-header__photo {
    width: auto;
    margin: 0 -15px 10px;
  }
  .threeminutes-header__phototitle {
    position: static;
    margin: 0;
    padding: 25px 0 20px;
    color: #000;
    font-size: 2.4rem;
    text-shadow: none;
  }
  .threeminutes-body__header {
    margin: 0 0 25px;
    padding: 10px 0;
    font-size: 1.6rem;
    text-align: center;
  }
  .threeminutes-body__contents {
    display: block;
    margin-bottom: 25px;
  }
  .threeminutes-body__contents div {
    flex: auto;
  }
  .threeminutes-body__contents figure {
    width: 100%;
    padding: 0 25px;
  }
  .threeminutes-history {
    padding-top: 25px;
  }
  .threeminutes-history__photocaption {
    position: static;
    width: 100%;
    margin-left: 0;
    font-size: 1.4rem;
  }
  .threeminutes-history__worker {
    padding: 0;
  }
  .threeminutes-philosophy__five {
    display: block;
    margin-bottom: 25px;
  }
  .threeminutes-philosophy__five h4 {
    display: block;
    width: 100%;
    padding-bottom: 0;
    font-size: 2.0rem;
    text-align: center;
    font-weight: bold;
    border-right: none;
  }
  .threeminutes-philosophy__five div {
    display: block;
    padding: 15px 0;
    font-size: 1.4rem;
  }
  .threeminutes-philosophy__brand {
    display: block;
  }
  .threeminutes-philosophy__brand > * {
    width: 100%;
    margin-bottom: 15px;
    padding: 0;
    border: 1px solid #ddd;
  }
  .threeminutes-philosophy__brandlogo {
    padding: 15px;
  }
  .threeminutes-philosophy__brandbody {
    margin: 0;
    padding: 15px 20px;
  }
  .threeminutes-philosophy__brandbody h4 {
    margin: 0 0 10px;
    font-size: 1.8rem;
  }
  .threeminutes-outline__factory {
    display: block;
    margin-bottom: 25px;
  }
  .threeminutes-outline__factory > * {
    width: 100%;
    margin-bottom: 25px;
  }
  .threeminutes-outline__factory figcaption {
    margin: 10px 0 0;
    padding-left: 10px;
  }
  .threeminutes-outline__factory figcaption div {
    font-size: 1.6rem;
  }
  .threeminutes-outline__photocaption {
    position: static;
    width: 100%;
    bottom: 0;
    margin-left: 0;
    padding: 10px 0;
    font-size: 1.4rem;
  }
  .threeminutes-outline__group {
    margin: 0 0 25px;
  }
  .threeminutes-outline__group > dt {
    font-size: 1.6rem;
  }
  .threeminutes-outline__group img {
    height: 100%;
  }
  .threeminutes-outline__officer {
    display: block;
  }
  .threeminutes-outline__officer > *:first-child {
    margin: 0;
  }
  .threeminutes-grouplist {
    margin: 0;
    background: #f1f1f1;
  }
  .threeminutes-grouplist h2 {
    padding: 0 0 15px;
    font-size: 1.6rem;
  }
  .threeminutes-grouplist__list {
    margin: 0 0 25px;
  }
  .threeminutes-grouplist__list > * {
    margin: 0;
    padding: 10px 0;
  }
  .threeminutes-grouplist a {
    display: table;
  }
  .threeminutes-grouplist__thumb {
    display: table-cell;
    vertical-align: middle;
    width: 100px;
  }
  .threeminutes-grouplist__thumb img {
    height: 40px;
  }
  .threeminutes-grouplist__name {
    display: table-cell;
    vertical-align: middle;
    padding: 0;
  }
  .threeminutes-grouplist__name strong {
    font-size: 1.6rem;
  }
  .threeminutes-grouplist__description {
    display: none;
  }
  .pannelbox {
    display: block;
  }
  .pannelbox__pannel {
    width: 100%;
    margin-bottom: 20px;
  }
  .pannelbox__pannelleft {
    width: 100%;
  }
  .pannelbox__pannelleft figure {
    margin: 0 0 10px;
  }
  .pannelbox__pannel--eat .pannelbox__pannelleft {
    background: transparent;
  }
  .pannelbox__pannel--eat .pannelbox__pannelleft img {
    display: inline-block;
  }
  .pannelbox__pannelright {
    width: 100%;
  }
  .pannelbox__pannelright > div {
    position: static;
  }
  .pannelbox__pannelright figure {
    display: none;
  }
  .pannelbox__eatheader {
    font-size: 1.6rem;
  }
  .pannelbox__link {
    padding: 15px;
  }
  .pannelbox__pannel--one .pannelbox__link,
  .pannelbox__pannel--eat .pannelbox__link {
    display: block;
  }
  .pannelbox__title {
    position: relative;
    margin: 0 0 5px;
    padding: 0 0 0 20px;
    line-height: 1.25;
    font-size: 1.8rem;
  }
  .csr-ringer_gou__window {
    max-width: 100%;
  }
  /* CSR */
  .csrindex__contentsheader {
    margin: 0 0 25px;
    font-size: 2.0rem;
  }
  .workstyle-catch p {
    font-size: 2.0rem;
  }
  .workstyle-header1 {
    margin: 0 0 15px;
    font-size: 2.0rem;
  }
  .workstyle-background__photo {
    flex-wrap: wrap;
  }
  .workstyle-background__photo > * {
    width: 50%;
  }
  .workstyle-goal__header {
    position: relative;
    margin: 0 0 25px;
    padding: 0 0 0 4em;
  }
  .workstyle-goal__header span {
    position: absolute;
    top: 0;
    left: 0;
    color: #C41844;
  }
  .workstyle-goal__graph {
    text-align: center;
  }
  .workstyle-header2 {
    margin: 0 0 25px;
    padding: 10px;
    font-size: 2.0rem;
  }
  .workstyle-activity__listbox {
    display: block;
    width: 100%;
  }
  .workstyle-activity__listbox > * {
    width: 100%;
    padding: 0 15px;
    margin-bottom: 25px;
  }
  .workstyle-activity__listbox figure {
    margin-bottom: 15px;
  }
  .workstyle-recruit__banner {
    height: 0;
    padding-top: 36.46%;
    background-image: url(../../csr/workstyle/img/recruit-banner-sp.jpg);
  }
  .workstyle-leadervoicephoto {
    text-align: center;
  }
  .workstyle-leadervoicephoto img {
    width: 60%;
  }
  /* IR情報 */
  .ir-soukai {
    width: 100%;
    padding: 10px;
  }
  .ir-soukai__header {
    padding: 25px 0;
    font-size: 2.2rem;
  }
  .ir-soukai__header span {
    font-size: 1.4rem;
  }
  .ir-soukai__list {
    padding: 0 0;
  }
  .ir-soukai__list > li {
    width: 49%;
  }
  .ir-soukai__list a {
    padding: 0 0 10px;
    font-size: 1.4rem;
  }
  .ir-soukai__movieicon {
    display: block;
    height: 120px;
    background-size: 100px auto;
  }
  .ir-soukai__dataicon {
    display: block;
    height: 120px;
    background-size: 100px auto;
  }
  .irindex__contentsheader {
    font-size: 2.0rem;
  }
  .irindex-stockholder .contentswidth, .irindex-library .contentswidth, .irindex-other .contentswidth {
    padding: 15px 15px 10px;
  }
  .irindex-menu {
    display: block;
    border-bottom: 1px solid #D4B100;
  }
  .irindex-menu li {
    width: 100%;
    margin: 0;
  }
  .irindex-menu--two li {
    width: 100%;
  }
  .irindex-menu--three li {
    width: 100%;
  }
  .irindex-menu a {
    position: relative;
    display: block;
    height: auto;
    text-align: center;
    line-height: 1.25;
    border: 1px solid #D4B100;
    border-bottom: none;
    font-size: 1.4rem;
  }
  .irindex-menu a br {
    display: none;
  }
  .irindex-menu__single {
    padding: 10px 30px 10px 10px;
  }
  .irindex-menu__double {
    padding: 10px 30px 10px 10px;
  }
  .irindex-stockholder .ir-soukai {
    margin: 0;
    padding: 0;
  }
  .irindex-stockholder .ir-soukai .contentswidth {
    padding: 25px 10px;
  }
  .irindex-stockholder .ir-soukai__header {
    color: #fff;
    font-size: 2.0rem;
    padding: 0 0 25px;
    margin: 0;
  }
  .irindex-stockholder .ir-soukai__list {
    padding-bottom: 5px;
  }
  .irindex-stockholder .ir-soukai .ringernet {
    margin: 20px auto;
  }
  .irindex-mail {
    background-size: 80% auto;
  }
  .irindex-mail .contentswidthnarrow {
    width: 100%;
  }
  .irindex-mail img {
    display: block;
    width: 60%;
    margin: 0 auto;
  }
  .irindex-stock_price {
    padding: 10px 25px;
    background-size: auto 100%;
  }
  /* 工場紹介 */
  .factory-topmovie__movie {
    margin: 0 0 20px;
  }
  .factory-topmovie__menu {
    display: flex;
    justify-content: space-between;
  }
  .factory-topmovie__menu > li {
    flex: 0 0 48.5%;
    max-width: 300px;
  }
  .factory-topmovie__menu > li:not(:last-of-type) {
    margin: 0;
  }
  .factory-topmovie__menu a {
    font-size: 1.4rem;
  }
  .factory-topmovie__menuicon img {
    width: 60px;
  }
  .factory__contentsheader {
    margin-bottom: 25px;
    font-size: 2.2rem;
  }
  .factory-kodawari {
    padding-bottom: 100px;
    background-size: 100% auto,100% auto;
  }
  .factory-kodawari__body {
    width: auto;
    margin: 0 -15px;
    padding: 0 15px;
    background-color: rgba(255, 255, 255, 0.75);
  }
  .factory-minasan {
    padding-top: 50px;
    background-color: #F8F1D4;
  }
  .factory-minasan__photo {
    flex-wrap: wrap;
    margin: 0 0 25px;
  }
  .factory-minasan__photo > * {
    width: 50%;
  }
  .factory-minasan__photo > *:first-child {
    width: 100%;
  }
  .factory-minasan__message {
    margin: 0 0 25px;
    text-align: center;
  }
  .factory-minasan__brand {
    display: block;
  }
  .factory-minasan__brand > * {
    width: 100%;
    margin-bottom: 15px;
    padding: 15px 0;
  }
  .factory-minasan__brand > * > *:first-child {
    width: 47.5%;
    padding-right: 25px;
  }
  .factory-minasan__brand > * > *:last-child {
    width: 52.5%;
    padding-right: 15px;
  }
  .factory-minasan__brand h3 {
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 1.2rem;
    font-weight: normal;
  }
  .factory-minasan__brand h3 img {
    display: inline-block;
    width: 50px;
    height: auto;
    margin: 0 0 10px;
  }
  .factory-minasan__brand .button {
    padding: 10px;
    font-size: 1.2rem;
  }
  .factory-factory__body {
    display: block;
  }
  .factory-factory__body > * {
    width: 100%;
    border-right: none;
    margin-bottom: 15px;
    padding: 0 15px 15px;
  }
  .factory-factory__photo {
    margin: 0 -15px;
  }
  .factory-factory__title {
    margin: 25px  0;
    font-size: 2.2rem;
  }
  .factory-factory__address {
    margin: 0 0 25px;
  }
  .factory-factory__data {
    width: 100%;
    margin: 0 auto 0;
  }
  .factory-factory__data table {
    width: 100%;
    margin-bottom: 25px;
  }
  .factory-factory .button {
    width: 100%;
    padding: 10px;
    font-size: 1.8rem;
  }
  .factory-intern__title {
    display: block;
    margin: 0 -15px;
    padding: 0;
  }
  .factory-intern__titletext {
    width: 100%;
  }
  .factory-intern__titletextwrapper {
    width: 100%;
    height: auto;
  }
  .factory-intern__titleicon {
    margin: 0 0 25px;
    padding-top: 25px;
  }
  .factory-intern__titleicon img {
    width: 50px;
  }
  .factory-intern__titlecatch {
    padding: 0 15px 25px;
    font-size: 1.8rem;
  }
  .factory-intern__titlename {
    position: static;
    padding: 0 15px 25px 50%;
  }
  .factory-intern__titlenamename {
    font-size: 2.2rem;
  }
  .factory-intern__titlenamename span {
    font-size: 1.8rem;
  }
  .factory-intern__titlephoto {
    width: 100%;
  }
  .factory-intern__body {
    padding-bottom: 0;
  }
  .factory-intern__interview {
    width: 100%;
    padding: 25px 0 25px;
  }
  .factory-intern__interview dt {
    margin: 0 0 15px;
  }
  .factory-intern__interview dd {
    margin: 0 0 15px;
    padding: 0;
  }
  .factory-intern__interviewphoto {
    padding: 0 15px;
  }
  .factory-report__header {
    font-size: 2.2rem;
  }
  .factory-report__photo > * {
    margin: 0 0 10px;
  }
  .factory-report__photo figcaption {
    font-size: 1.2rem;
  }
  .factory-report__photo figcaption::after {
    display: none;
  }
  .factory-detail {
    padding-top: 15px;
  }
  .factory-detail__box {
    display: block;
    margin: 0 0 15px;
    padding: 0;
  }
  .factory-detail__slider {
    width: 100%;
  }
  .factory-detail__slider figcaption {
    margin: 0;
    padding: 0 15px;
    font-size: 1.2rem;
  }
  .factory-detail__textbox {
    width: 100%;
  }
  .factory-detail__num {
    display: none;
  }
  .factory-detail__text {
    position: static;
    width: auto;
    padding: 0 15px 15px;
  }
  .factory-detail__text h2 {
    margin: 0 0 10px;
    padding: 0 0 10px;
    font-size: 2.0rem;
  }
  .factory-kyoto_market__marchth {
    width: 100%;
  }
  .factory__market__readtxt {
    margin: 0 0 25px;
    font-size: 1.4rem;
  }
  .factory__market__gallery .photo {
    padding: 0;
  }
  .factory__market__flexbox .market-item {
    flex: 0 0 48.5%;
    max-width: 380px;
    margin: 0 0 25px;
  }
  .factory__market__summary {
    padding: 0;
    margin: 15px auto;
  }
  .factory__market__summary .datatable1 {
    font-size: 1.4rem;
  }
  .factory__accordion {
    margin: 20px auto;
  }
  .factory__accordion__head {
    padding: 12px 40px 12px 20px;
    font-size: 1.6rem;
  }
  .factory__accordion__head .ui-marker {
    right: 15px;
  }
  .factory__accordion__head .ui-marker::before {
    border-top: 12px solid #D4B100;
    border-bottom: none;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
  }
  .factory__accordion__head.is-open .ui-marker::before {
    border-top: none;
    border-bottom: 12px solid #D4B100;
  }
  .factory__accordion__contents {
    padding: 0 5px 30px;
  }
  .factory__accordion__contents .ddelemwrap {
    max-width: 600px;
  }
  .factory__accordion__contents .ddelemwrap .tradename {
    font-size: 1.4rem;
  }
  /* 事業紹介 */
  .businessindex__header {
    margin: 0 0 25px;
    padding: 0;
    text-align: center;
    font-size: 2.8rem;
    font-weight: normal;
  }
  .businessindex-list {
    padding-top: 50px;
  }
  .businessindex-list__item {
    margin: 0 0 50px;
  }
  .businessindex-list__item a:hover .businessindex-list__description {
    display: none;
  }
  .businessindex-list__text {
    padding: 0;
  }
  .businessindex-list__logo {
    margin: 0;
    padding-top: 18%;
  }
  .businessindex-list__logo img {
    width: 30%;
    height: auto;
  }
  .businessindex-list__brandname {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 5px;
    color: #fff;
    font-size: 1.6rem;
    background-color: rgba(0, 0, 0, 0.75);
  }
  .businessindex-list__description {
    display: none;
  }
  .businessindex-oversea__mapimage {
    width: 100%;
  }
  .businessindex-oversea__maplist li {
    width: 23%;
  }
  .businessindex-group {
    padding-top: 50px;
  }
  .businessindex-group__grouplist {
    display: block;
    margin: 0;
    padding: 0;
  }
  .businessindex-group__grouplist > li {
    width: 100%;
    margin-bottom: 15px;
  }
  .businessindex-group__grouplist a {
    display: flex;
  }
  .businessindex-group__grouplist a:hover {
    color: #000;
    text-decoration: none;
  }
  .businessindex-group__grouplist a:hover .businessindex-group__description {
    display: none;
  }
  .businessindex-group__photo {
    width: 50%;
  }
  .businessindex-group__text {
    width: 50%;
  }
  .businessindex-group__logo {
    margin-bottom: 10px;
  }
  .businessindex-group__logo img {
    width: 30%;
    height: auto;
  }
  .businessindex-group__name {
    margin: 0;
    font-size: 1.2rem;
  }
  .businessindex-group__description {
    display: none;
  }
  /* リンガー号レポート */
  .ringergoureport-backnumber {
    padding: 50px 15px 0;
  }
  .ringergoureport-mainheader {
    padding: 0;
  }
  .ringergoureport-mainheader__header {
    margin: 0 0 25px;
    padding: 90% 0 0;
    background: url(../../ringer_gou_report/img/mainheader-bg-sp.jpg?2302) center top/100% auto no-repeat;
  }
  .ringergoureport-mainheader__no {
    font-size: 1.4rem;
  }
  .ringergoureport-mainheader__name {
    font-size: 1.8rem;
  }
  .ringergoureport-photo figcaption {
    text-align: left;
  }
  .ringergoureport-photo--full .ringergoureport-photo__photo {
    width: 100%;
  }
  .ringergoureport-header {
    font-size: 1.6rem;
  }
  /* IR 更新情報 */
  #divDataArea dl > dt {
    padding: 15px 0 0 10px;
    width: 100%;
    float: none;
  }
  #divDataArea dl > dd {
    margin: 0;
    padding: 15px 0 10px 10px;
    border-top: none;
  }
  /* IR 決算短信　有価証券報告書 取引所公開リリース 月次レポート*/
  .s_eirBlock .eirGroup {
    margin: 0;
    padding: 0;
  }
  .s_eirBlock .eirGroup .s_eirList_item {
    width: 100%;
    display: block;
  }
  .s_eirBlock .eirGroup .eirItem_date {
    margin-left: 5px;
    width: 100%;
    display: block;
  }
  .s_eirBlock .eirGroup .eirItem_title {
    width: 100%;
    display: block;
  }
  .s_eirBlock .eirGroup .eirItem_body {
    margin-right: 10px;
    padding: 5px 0;
    width: 100%;
    display: block;
  }
  /* 決算公告*/
  .connection_companylist > * {
    margin-bottom: 20px;
  }
  .connection_companylist--two > *, .connection_companylist--three > *, .connection_companylist--four > * {
    width: 48.33%;
  }
  /* SNS公式アカウントページ */
  .sns__container {
    margin: 0 0 35px;
  }
  .sns__contentsh {
    margin: 0 0 25px;
  }
  .sns__contentsh > * {
    border-bottom-width: 3px;
  }
  .sns__contentsh .logo {
    flex: 0 0 30px;
    padding: 0 0 7px;
  }
  .sns__contentsh .brand {
    padding: 0 0 7px 7px;
    font-size: 1.8rem;
  }
  .sns__listblock .elem {
    flex: 0 0 50px;
    margin: 0 0 20px;
  }
  .sns__listblock .elem:not(:last-of-type) {
    margin-right: 20px;
  }
  /* 株主通信ページ */
  .report__container {
    padding-bottom: 30px;
  }
  .report__container:not(:last-of-type) {
    margin-bottom: 30px;
  }
  .report__termhead {
    margin: 0;
    font-size: 2rem;
  }
  .report__contentsbox {
    display: block;
    width: 100%;
    max-width: 550px;
  }
  .report__contentsbox > * {
    width: 100%;
  }
  .report__elembox {
    padding-top: 25px;
  }
  .report__backnumber {
    display: block;
    width: 100%;
    margin: 30px auto 10px;
    /*display: flex;
			justify-content: space-between;
			align-items: stretch;
			flex-wrap: wrap;
			margin: 45px auto 10px;
			padding: 0;*/
  }
  .report__backnumber__elem {
    width: 100%;
    margin: 0 0 20px;
    /*display: block;
				flex: 0 0 49.5%;
				margin: 0 0 30px;
				padding: 0;*/
  }
  .report__backnumber__elem table th {
    padding-bottom: 6px;
    font-size: 1.8rem;
  }
  .report__backnumber__elem table td a figure {
    padding: 10px 5px 0;
  }
  .report__backnumber__elem table td a figure img {
    width: 98%;
    max-width: initial;
  }
  .report__backnumber__elem table td a figure figcaption .pdfsize {
    font-size: 1.2rem;
  }
}
