@charset "UTF-8";
/* ===================================================================
CSS information
 file name  :  common.css
 style info :  サイト全体共通css
=================================================================== */
/* fontsize YUI
10px = 77% 11px = 85% 12px = 93% 13px = 100%
14px = 108% 15px = 116% 16px = 123.1% 17px = 131%
18px = 138.5% 19px = 146.5% 20px = 153.9% 21px = 161.6%
22px = 167% 23px = 174% 24px = 182% 25px = 189% 26px = 197% */
/*----------------------------------------------------------------------------------
		 								body、リンク色etc
------------------------------------------------------------------------------------*/
/* pc sp */
@media only screen and (min-width: 680px) {
  .pc {
    display: block; }

  .sp {
    display: none !important; } }
@media only screen and (max-width: 679px) {
  .pc {
    display: none !important; }

  .sp {
    display: block; } }
/* pc sp txt*/
@media only screen and (min-width: 680px) {
  .pcTxt {
    display: block; }

  .spTxt {
    display: inline; } }
@media only screen and (max-width: 679px) {
  .pcTxt {
    display: inline; }

  .spTxt {
    display: block; } }
/* style */
.fr {
  float: right; }

.fw-b {
  font-weight: bold; }

.ta-c {
  text-align: center; }

@media only screen and (max-width: 679px) {
  .ta-c-sp {
    text-align: center; } }

/* 基本リンク色 */
a {
  transition: all 0.5s ease;
  text-decoration: none;
  cursor: pointer;
  color: #000; }
  a:hover {
    transition: all 0.5s ease;
    opacity: 0.65; }

body {
  color: #000;
  background-color: #EEEBD5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  overflow: hidden; }

#page-top {
  position: fixed;
  bottom: 64px;
  right: 0px; }

main {
  margin-top: 68px; }
  @media only screen and (max-width: 679px) {
    main {
      margin-top: 58px; } }

/*----------------------------------------------------------------------------------
		 								pankuzu 
------------------------------------------------------------------------------------*/
.pankuzuList {
  padding: 0 10px;
  margin-top: 5px;
  margin-bottom: 16px; }
  .pankuzuList span {
    position: relative;
    font-size: 12px; }
    .pankuzuList span + span {
      margin-left: 26px; }
      .pankuzuList span + span::before {
        position: absolute;
        top: 0px;
        left: -16px;
        content: ">";
        font-size: 12px; }

/*----------------------------------------------------------------------------------
                                        container 
------------------------------------------------------------------------------------*/
.container {
  margin-right: auto;
  margin-left: auto; }
  .container.--L {
    max-width: 1180px; }
  .container.--M {
    max-width: 1045px; }
  .container.--MS {
    max-width: 940px; }
  .container.--S {
    max-width: 800px; }
  .container.--SS {
    max-width: 635px; }

/*----------------------------------------------------------------------------------
		 								pagetop 
------------------------------------------------------------------------------------*/
#pagetop {
  position: fixed;
  bottom: 10px;
  right: 40px; }

/*----------------------------------------------------------------------------------
                                      common_btn 
------------------------------------------------------------------------------------*/
.common_btn {
  margin-top: 33px;
  text-align: center; }
  .common_btn a, .common_btn button {
    box-sizing: border-box;
    display: inline-block;
    width: 300px;
    color: #fff;
    background-color: #000;
    border: none;
    border-radius: 10px;
    padding: 17px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    transition: all 0.3s ease; }
    .common_btn a:hover, .common_btn button:hover {
      cursor: pointer;
      opacity: 0.8;
      transition: all 0.3s ease; }

/*----------------------------------------------------------------------------------
		 								header 
------------------------------------------------------------------------------------*/
body.home {
  background-color: #F5F3E8; }
  body.home #header {
    background-color: #F5F3E8; }

#header {
  box-sizing: border-box;
  z-index: 3;
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  background-color: #EEEBD5;
  padding: 24px 70px 24px 20px; }
  @media only screen and (max-width: 679px) {
    #header {
      padding: 15px 20px;
      height: 58px; } }
  #header .header_logo {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 110px; }
    @media only screen and (max-width: 679px) {
      #header .header_logo {
        top: 15px;
        width: 110px; } }
    #header .header_logo img {
      width: 100%; }
  #header .header_menu {
    display: flex;
    justify-content: flex-end;
    width: calc(100% - 120px); }

.globalNavi {
  display: inline-flex;
  align-items: center; }
  @media only screen and (max-width: 679px) {
    .globalNavi {
      display: none; } }
  .globalNavi li {
    font-size: 14px;
    font-weight: bold; }
    @media only screen and (min-width: 680px) and (max-width: 1039px) {
      .globalNavi li {
        font-size: 13px; } }
    .globalNavi li a {
      color: #000; }
    .globalNavi li + li {
      margin-left: 30px; }
      @media only screen and (min-width: 680px) and (max-width: 1039px) {
        .globalNavi li + li {
          margin-left: 12px; } }

/*----------------------------------------------------------------------------------
		 								footer 
------------------------------------------------------------------------------------*/
#footer {
  overflow: hidden;
  color: #fff;
  background: #323232;
  padding: 50px 20px; }
  #footer .footer_top {
    position: relative;
    display: flex; }
    @media only screen and (max-width: 679px) {
      #footer .footer_top {
        display: block;
        text-align: center; } }
  #footer .footer_logo {
    width: 180px; }
    @media only screen and (max-width: 679px) {
      #footer .footer_logo {
        margin: 0 auto; } }
  #footer .footer_sns {
    position: absolute;
    top: 10px;
    right: 0;
    display: flex;
    width: calc(100% -180px); }
    @media only screen and (max-width: 679px) {
      #footer .footer_sns {
        position: static;
        display: inline-flex;
        width: auto;
        margin-top: 30px; } }
    #footer .footer_sns li + li {
      margin-left: 20px; }
  #footer .footer_contents {
    margin-top: 30px; }
    #footer .footer_contents dl {
      display: flex;
      flex-wrap: wrap;
      border-bottom: solid 1px rgba(255, 255, 255, 0.2); }
      @media only screen and (max-width: 679px) {
        #footer .footer_contents dl {
          display: block; } }
      #footer .footer_contents dl dt {
        border-top: solid 1px rgba(255, 255, 255, 0.2);
        width: 160px;
        padding: 10px 0;
        font-size: 12px;
        font-weight: 700; }
        @media only screen and (max-width: 679px) {
          #footer .footer_contents dl dt {
            width: 100%; } }
      #footer .footer_contents dl dd {
        border-top: solid 1px rgba(255, 255, 255, 0.2);
        width: calc(100% - 160px);
        padding: 10px 0; }
        @media only screen and (max-width: 679px) {
          #footer .footer_contents dl dd {
            border-top: none;
            width: 100%;
            padding: 0 0 10px; } }
        #footer .footer_contents dl dd ul {
          display: flex;
          flex-wrap: wrap;
          gap: 10px 10px; }
          #footer .footer_contents dl dd ul li {
            font-size: 12px; }
            #footer .footer_contents dl dd ul li a {
              transition: all 0.5s ease;
              color: #fff;
              opacity: 0.6; }
              #footer .footer_contents dl dd ul li a:hover {
                transition: all 0.5s ease;
                opacity: 0.4; }
  #footer .footer_links {
    margin-top: 8px;
    display: flex;
    gap: 5px 15px;
    flex-wrap: wrap; }
    @media only screen and (max-width: 679px) {
      #footer .footer_links {
        width: 272px; } }
    #footer .footer_links li a {
      transition: all 0.5s ease;
      color: #fff;
      opacity: 0.6;
      font-size: 12px; }
      #footer .footer_links li a:hover {
        transition: all 0.5s ease;
        opacity: 0.4; }
  #footer .copyRight {
    margin-top: 30px;
    font-size: 12px; }
    #footer .copyRight sub {
      font-size: 18px; }
