@charset "utf-8";

* {
  box-sizing: border-box;
  border-collapse: collapse;
  word-wrap: normal;
  word-break: break-all;
}

p, ul, ol, li, dl, dt, dd, a {margin: 0; padding: 0; list-style: none; font-weight: normal;}
body {margin: 0; padding: 0; font: inherit;}
a img {border: none;}
html{scroll-behavior: smooth;}

.fz14 {font-size: 14px; line-height: 1.7;}
.fz15 {font-size: 15px; line-height: 1.6;}
.fz18 {font-size: 18px; line-height: 1.6;}
.fz20 {font-size: 20px; line-height: 1.5;}
.fz22 {font-size: 22px; line-height: 1.5;}
.fz23 {font-size: 23px; line-height: 2.0;}
.fz24 {font-size: 24px; line-height: 1.5;}
.fz28 {font-size: 28px; line-height: 1.5;}
.fz30 {font-size: 30px; line-height: 1.5;}
.fz32 {font-size: 32px; line-height: 1.5;}
.fz35 {font-size: 35px; line-height: 1.5;}

/*Overpass-Regular*/
@font-face {
   font-family: Overpass;
   src: url('../font/overpass/Overpass-Regular.ttf') format("truetype");
   font-weight: 400;
}

/*Overpass-Light*/
@font-face {
   font-family: Overpass;
   src: url('../font/overpass/Overpass-Light.ttf') format("truetype");
   font-weight: 300;
}

/*Overpass-Thin*/
@font-face {
   font-family: Overpass;
   src: url('../font/overpass/Overpass-Thin.ttf') format("truetype");
   font-weight: 100;
}

 @font-face {
  font-family: "NotoSansCJKjp-Light";
  src: url("../font/NotoSansCJKjp-Light.woff2") format("woff2"), url("../font/NotoSansCJKjp-Light.woff") format("woff");
}
@font-face {
  font-family: "NotoSansCJKjp-Regular";
  src: url("../font/NotoSansCJKjp-Regular.woff2") format("woff2"), url("../font/NotoSansCJKjp-Regular.woff") format("woff");
}
@font-face {
  font-family: "NotoSansCJKjp-Medium";
  src: url("../font/NotoSansCJKjp-Medium.woff2") format("woff2"), url("../font/NotoSansCJKjp-Medium.woff") format("woff");
}
@font-face {
  font-family: "NotoSansCJKjp-Bold";
  src: url("../font/NotoSansCJKjp-Bold.woff2") format("woff2"), url("../font/NotoSansCJKjp-Bold.woff") format("woff");
}
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(https://example.com/MaterialIcons-Regular.eot); /* For IE6-8 */
  src: local('Material Icons'),
    local('MaterialIcons-Regular'),
    url(https://example.com/MaterialIcons-Regular.woff2) format('woff2'),
    url(https://example.com/MaterialIcons-Regular.woff) format('woff'),
    url(https://example.com/MaterialIcons-Regular.ttf) format('truetype');
}


/* =======================================================================================
　Header
======================================================================================= */
.l-header {
  position: relative;
  background: none;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
  overflow: hidden;
  height: 200px;
  z-index: 100;
  transition: margin-top .4s ease-out;
  top: 20px;
  text-align: center;
}
.l-header.initial {
  margin-top: 0 !important;
}
.l-header__logo {
  margin: 0 auto 20px;
  padding: 0;
}
.l-header .l-nav {
  padding-top: 20px;
  text-align: center;
}
.l-header ul.l-nav__global {
  vertical-align: middle;
}
.l-header .l-nav__container li {
  display: inline-block;
  -webkit-calc(100% / 5) ;
  width : calc(100% / 5 - 80px) ;
  margin: 0 2%;
}
.l-header .l-nav__container li a {
  display: block;
  margin: 0 auto;
  padding: 0 0 5px;
  font-size: 16px;
  color: #354869;
  letter-spacing: 1px;
  font-family: "NotoSansCJKjp-Regular";
  font-weight: 400;
  transition: border-bottom .4s;
}
.l-nav__container li:last-child a {
  font-size: 130%;
  }
.l-header .l-nav__container li a:active, .l-header .l-nav__container li a:hover {
  color: #354869;
  border-bottom: 1px solid #354869;
  text-decoration: none;
}
.l-header .l-nav__container li:last-child a:active, .l-header .l-nav__container li:last-child a:hover {
  color: #354869;
  border-bottom: none;
}
.l-header__menubtn {
  display: none;
}

a.inpage {filter:alpha(opacity=40); -ms-filter: "alpha(opacity=40)"; -moz-opacity:0.4; -khtml-opacity: 0.4; opacity:0.4;}

.l-header.bc {
  height: 112px;
  margin-top: -112px;
}

.c-layout-contents {
  max-width: 1000px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
}
.menucontainer {display: none;}

@media only screen and (max-width: 1000px) {
.h_logo img.headerlogo {width: 70%;}
.l-header {position: fixed; background: #ffffff; width: 100%; box-sizing: border-box; margin: 0 auto; overflow: hidden; height: 0; z-index: 50; margin-top: 0; transition: margin-top .4s ease-out;}
.l-header .l-nav {display: none;}
.l-header .l-nav__container li:last-child {display: none;}
.l-header__logo {display: none;}
.menucontainer {display: block;}
}

/* =======================================================================================
　Contents
======================================================================================= */
#main {width: 100%; margin: 0 auto; padding: 0;}
.main_kv {width: 100%; margin: 0 auto 150px; padding: 0 0 0; /*background-color: #fafa64;*/ background-image: url(../img/kv.png); background-size: contain; background-repeat: no-repeat; align-items: center;}
.main_kvsp {display: none;}	
.main_catch {width: 160px; margin: 0 auto; padding: 0;}
p.catchcopy {margin: 0 auto; font-size: 24px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; line-height: 2.2; letter-spacing: 0; position: relative; top: 100px; color: #354869;}
p.catchcopy span {position: relative; left: 15px; top:-15px;}
h2.title {font-size: 35px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.5; letter-spacing: 0.2em; color: #354869; padding: 0 0 0; margin: 0 auto 50px;}
h2.title span {font-size: 40%;}
h3.title_gr, h3.title_lp, h3.title_web, h3.title_cms, h3.title_ec, h3.title_ecmg {font-size: 22px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.5; letter-spacing: 0.02em; color: #354869; border-bottom: 1px solid #354869; padding: 0 0 10px; margin: 0 auto 15px;}
h3.title span {font-size: 60%;}
h3.title_gr:before {content: "\e150"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 5px; margin-right: 5px;}
h3.title_lp:before {content: "\e3b6"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 5px; margin-right: 5px;}
h3.title_web:before {content: "\e894"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 5px; margin-right: 5px;}
h3.title_cms:before {content: "\e1b1"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 5px; margin-right: 5px;}
h3.title_ec:before {content: "\e8cc"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 5px; margin-right: 5px;}
h3.title_ecmg:before {content: "\e8b8"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 5px; margin-right: 5px;}
h4.title {font-size: 18px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; line-height: 1.5; letter-spacing: 0.02em; color: #354869; padding: 0 0 0; margin: 0 auto 15px; text-align: left;}
h4.title span {font-size: 80%;}
p.text01 {width: 95%; margin: auto; font-size: 14px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: left; text-align: justify;}
p.text02 {width: 100%; margin: auto; font-size: 15px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: left; text-align: justify;}
p.text03 {width: 100%; margin: 20px auto; font-size: 14px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: left; text-align: justify;}

.spbr {display: none;}
section#service {width: 1000px; margin: 0 auto 80px; padding: 0; text-align: center;}
section#service section {display: inline-block; -webkit-calc(100% / 3) ; width : calc(100% / 3 - 32px) ; margin: 0 20px 50px; padding: 0 0; text-align: center; vertical-align: top;}
section#service section.first {margin-left: 0;}
section#service section.last {margin-right: 0;}
section#works {width: 1000px; margin: 0 auto 80px; padding: 0; text-align: center;}
section#works .category {width: 100%; margin: 0 auto 10px; text-align: center;}
section#works .category p {font-family: "NotoSansCJKjp-light"; font-weight: 100; width: 100%; margin: 0 auto 0; font-size: 16px; letter-spacing: 0; display: flex; align-items: center; color: #354869;}
/*section#works .category p:after {content: ""; flex-grow: 1; height: 1px; background: #354869; display: block;}
section#works .category p:before {margin-right: .85em;}
section#works .category p:after {margin-left: .85em;}*/
section#works section {display: inline-block; -webkit-calc(100% / 3) ; width : calc(100% / 3 - 32px) ; margin: 0 20px 50px; padding: 2px; text-align: center; vertical-align: top; border: 1px solid #afafaf;}
section#works section.first {margin-left: 0;}
section#works section.last {margin-right: 0;}
section#works section a {display: block; overflow: hidden; border-radius: 0; z-index: 1;}
section#works section img {width: 100%; position: relative;}
section#works section img:hover {-webkit-transform: scale(1.04); -moz-transform: scale(1.04); -o-transform: scale(1.04); -ms-transform: scale(1.04); transform: scale(1.04); transition: all 0.3s ease-out;}
section#about {width: 1000px; margin: 0 auto 150px; padding: 0; text-align: center;}
section#about section {display: block; margin: 0 auto; padding: 0; text-align: center;}
section#about section.icon {display: inline-block; width: 20%;}
section#about section.icon img {width: 150px;}
section#about section.profile {display: inline-block; width: 75%; vertical-align: top;}
section#about section.profile .history {width: 100%; height: 100px; margin: 20px auto 30px; padding: 0; text-align: left;}
section#about section.profile .history dt {float: left; display: block; font-family: "NotoSansCJKjp-light"; font-weight: 100; width: 20%; margin: 0 auto 0; font-size: 14px; text-align: left; color: #354869;}
section#about section.profile .history dt.twoline {margin-bottom: 20px;}
section#about section.profile .history dd {float: right; display: block; font-family: "NotoSansCJKjp-light"; font-weight: 100; width: 80%; margin: 0 auto 0; font-size: 14px; text-align: left; color: #354869;}
section#contact {width: 1000px; margin: 0 auto 80px; padding: 0; text-align: left;}
section#contact p.thanks_top {width: 100%; margin: 50px auto; font-size: 17px; font-family: "NotoSansCJKjp-light"; font-weight: 300; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: center;}
section#contact p.thanks_comment {width: 100%; margin: 0 auto; font-size: 14px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 2.0; letter-spacing: 0.05em; color: #354869; text-align: center;}
.preparation {width: 100%; height: 50vh; text-align: center; font-size: 15px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869;}

@media screen and (min-width:1350px) {
.main_kv {width: 100%; margin: 0 auto 150px; padding: 0 0 0; /*background-color: #fafa64;*/ background-image: url(../img/kv.png); background-size: 100%; background-repeat: no-repeat; align-items: center;}	
}

@media only screen and ( max-width : 1200px ) {
p.catchcopy {margin: 0 auto; font-size: 22px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; line-height: 2.2; letter-spacing: 0; position: relative; top: 50px; color: #354869;}
}

@media only screen and ( max-width : 1000px ) {
.main_kv {width: 100%; margin: 0 auto 150px; padding: 100px 0 0; /*background-color: #fafa64;*/ background-image: url(../img/kv.png); background-size: cover; background-repeat: no-repeat; align-items: center;}
.main_kvsp {display: none;}	
.main_catch {width: 60%; margin: auto; padding: 0;}
img.kv{width: 100%; height: auto;}
p.catchcopy {margin: 0 auto; font-size: 20px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; line-height: 2.0; letter-spacing: 0.05em; position: relative; top: 100px; color: #354869;}
p.catchcopy span {position: relative; left: 15px; top:-15px;}
h2.title {font-size: 30px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.5; letter-spacing: 0.2em; color: #354869; padding: 0 0 0; margin: 0 auto 50px;}
h2.title span {font-size: 40%;}
h3.title_gr, h3.title_lp, h3.title_web, h3.title_cms, h3.title_ec, h3.title_ecmg {font-size: 18px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.5; letter-spacing: 0.02em; color: #354869; border-bottom: 1px solid #354869; padding: 0 0 10px; margin: 0 auto 15px;}
h3.title span {font-size: 60%;}
h3.title_gr:before {content: "\e150"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_lp:before {content: "\e3b6"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_web:before {content: "\e894"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_cms:before {content: "\e1b1"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_ec:before {content: "\e8cc"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_ecmg:before {content: "\e8b8"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h4.title {font-size: 18px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; line-height: 1.5; letter-spacing: 0.02em; color: #354869; padding: 0 0 0; margin: 0 auto 15px; text-align: left;}
h4.title span {font-size: 80%;}
p.text01 {width: 95%; margin: auto; font-size: 13px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: left; text-align: justify;}
p.text02 {width: 100%; margin: auto; font-size: 14px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: left; text-align: justify;}
p.text03 {width: 100%; margin: 20px auto; font-size: 13px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: left; text-align: justify;}
.spbr {display: block;}
section#service {width: 90%; margin: 120px auto 80px; padding: 0; text-align: center;}
section#service section {display: inline-block; -webkit-calc(100% / 3) ; width : calc(100% / 3 - 32px) ; margin: 0 20px 50px; padding: 0 0; text-align: center; vertical-align: top;}
section#service section.first {margin-left: 0;}
section#service section.last {margin-right: 0;}
section#works {width: 90%; margin: 0 auto 80px; padding: 0; text-align: center;}
section#works .category {width: 100%; margin: 0 auto 10px; text-align: center;}
section#works .category p {font-family: "NotoSansCJKjp-light"; font-weight: 100; width: 100%; margin: 0 auto 0; font-size: 16px; letter-spacing: 0; display: flex; align-items: center; color: #354869;}
/*section#works .category p:after {content: ""; flex-grow: 1; height: 1px; background: #354869; display: block;}
section#works .category p:before {margin-right: .85em;}
section#works .category p:after {margin-left: .85em;}*/
section#works section {display: inline-block; -webkit-calc(100% / 3) ; width : calc(100% / 3 - 32px) ; margin: 0 20px 50px; padding: 2px; text-align: center; vertical-align: top; border: 1px solid #afafaf;}
section#works section.first {margin-left: 0;}
section#works section.last {margin-right: 0;}
section#works section a {display: block; overflow: hidden; border-radius: 0; z-index: 1;}
section#works section img.workstop {width: 100%; position: relative;}
section#works section img:hover {-webkit-transform: scale(1.04); -moz-transform: scale(1.04); -o-transform: scale(1.04); -ms-transform: scale(1.04); transform: scale(1.04); transition: all 0.3s ease-out;}
section#about {width: 95%; margin: 0 auto 80px; padding: 0; text-align: center;}
section#about section {display: block; margin: 0 auto; padding: 0; text-align: center;}
section#about section.icon {display: inline-block; width: 15%;}
section#about section.icon img {width: 100%;}
section#about section.profile {display: inline-block; width: 78%; margin-left: 2%; vertical-align: top;}
section#about section.profile .history {display: inline-block; width: 100%; height: auto; margin: 20px auto 30px; padding: 0; text-align: left;}
section#about section.profile .history dt {float: left; display: block; font-family: "NotoSansCJKjp-light"; font-weight: 100; width: 20%; margin: 0 auto 0; font-size: 13px; text-align: left; color: #354869;}
section#about section.profile .history dt.twoline {margin-bottom: 20px;}
section#about section.profile .history dd {float: right; display: block; font-family: "NotoSansCJKjp-light"; font-weight: 100; width: 80%; margin: 0 auto 0; font-size: 14px; text-align: left; color: #354869;}
section#contact {width: 95%; margin: 100px auto 80px; padding: 0; text-align: left;}
section#contact p.thanks_top {width: 100%; margin: 50px auto; font-size: 16px; font-family: "NotoSansCJKjp-light"; font-weight: 300; line-height: 1.8; letter-spacing: 0.05em; color: #354869; text-align: center;}
section#contact p.thanks_comment {width: 100%; margin: 0 auto; font-size: 13px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 2.0; letter-spacing: 0.05em; color: #354869; text-align: center;}
}

@media only screen and (max-width: 768px) {
#main {width: 100%; margin: 0 auto; padding: 0;}
.main_kv {display: none;}
.main_kvsp {display: block; width: 100%; margin: 0 auto 0; padding: 0 0 0;}
.main_kvsp img {width: 100%;}
.main_catch {width: 60%; margin: auto; padding: 0;}
p.catchcopy {font-size: 20px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; line-height: 2.0; letter-spacing: 0.05em; position: relative; top: 100px; color: #354869;}
p.catchcopy span {position: relative; left: 15px; top:-15px;}
h2.title {font-size: 30px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.5; letter-spacing: 0.2em; color: #354869; padding: 0 0 0; margin: 0 auto 50px;}
h2.title span {font-size: 40%;}
h3.title_gr, h3.title_lp, h3.title_web, h3.title_cms, h3.title_ec, h3.title_ecmg {font-size: 18px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.4; letter-spacing: 0.02em; color: #354869; border-bottom: 1px solid #354869; padding: 0 0 10px; margin: 0 auto 15px;}
h3.title span {font-size: 60%;}
h3.title_gr:before {content: "\e150"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_lp:before {content: "\e3b6"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_web:before {content: "\e894"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_cms:before {content: "\e1b1"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_ec:before {content: "\e8cc"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h3.title_ecmg:before {content: "\e8b8"; font-family: 'Material Icons'; font-size: 120%; position: relative; top: 0; margin-right: 0; display: block;}
h4.title {font-size: 18px; font-family: "NotoSansCJKjp-Medium"; font-weight: 400; line-height: 1.5; letter-spacing: 0.02em; color: #354869; padding: 0 0 0; margin: 0 auto 15px; text-align: left;}
h4.title span {font-size: 80%;}
p.text01 {width: 95%; margin: auto; font-size: 13px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.7; letter-spacing: 0.04em; color: #354869; text-align: left; text-align: justify;}
p.text02 {width: 100%; margin: auto; font-size: 14px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.7; letter-spacing: 0.04em; color: #354869; text-align: left; text-align: justify;}
p.text03 {width: 100%; margin: 20px auto; font-size: 13px; font-family: "NotoSansCJKjp-light"; font-weight: 400; line-height: 1.7; letter-spacing: 0.04em; color: #354869; text-align: left; text-align: justify;}
.spbr {display: block;}
section#service {width: 98%; margin: 80px auto 80px; padding: 0; text-align: center;}
section#service section {display: inline-block; -webkit-calc(100% / 2) ; width : calc(100% / 2 - 32px) ; margin: 0 2% 50px; padding: 0 0; text-align: center; vertical-align: top;}
section#service section.first {margin: 0 2% 50px;}
section#service section.last {margin: 0 2% 50px;}
section#works {width: 98%; margin: 0 auto 80px; padding: 0; text-align: center;}
section#works .category {width: 100%; margin: 0 auto 10px; text-align: center;}
section#works .category p {font-family: "NotoSansCJKjp-light"; font-weight: 400; width: 97%; margin: 0 auto 0; font-size: 16px; letter-spacing: 0; display: flex; align-items: center; color: #354869;}
/*section#works .category p:after {content: ""; flex-grow: 1; height: 1px; background: #354869; display: block;}
section#works .category p:before {margin-right: .85em;}
section#works .category p:after {margin-left: .85em;}*/
section#works section {display: inline-block; -webkit-calc(100% / 2) ; width : calc(100% / 2 - 32px) ; margin: 0 2% 50px; padding: 2px; text-align: center; vertical-align: top; border: 1px solid #afafaf;}
section#works section.first {margin: 0 2% 50px;}
section#works section.last {display: none; margin: 0;}
section#works section a {display: block; overflow: hidden; border-radius: 0; z-index: 1;}
section#works section img.workstop {width: 100%; position: relative;}
section#works section img:hover {-webkit-transform: scale(1.04); -moz-transform: scale(1.04); -o-transform: scale(1.04); -ms-transform: scale(1.04); transform: scale(1.04); transition: all 0.3s ease-out;}
section#about {width: 95%; margin: 0 auto 80px; padding: 0; text-align: center;}
section#about section {display: block; margin: 0 auto 80px; padding: 0; text-align: center;}
section#about section.icon {display: block; width: 100%;}
section#about section.icon img.icon_cotorie {width: 40%; margin: 0 auto 30px;}
section#about section.profile {display: inline-block; width: 90%; margin: 0 auto; vertical-align: top;}
section#about section.profile .history {display: inline-block; width: 100%; height: auto; margin: 20px auto 30px; padding: 0; text-align: left;}
section#about section.profile .history dt {float: none; display: block; font-family: "NotoSansCJKjp-light"; font-weight: 400; width: 100%; margin: 0 auto 5px; font-size: 13px; text-align: left; color: #354869;}
section#about section.profile .history dt.twoline {margin-bottom: 5px;}
section#about section.profile .history dd {float: none; display: block; font-family: "NotoSansCJKjp-light"; font-weight: 400; width: 100%; margin: 0 auto 15px; font-size: 14px; text-align: left; color: #354869; padding-left: 2%;}
}


/* =======================================================================================
　Footer
======================================================================================= */
footer {width: 100%; margin: 0 auto; padding: 10px 0 0; text-align: center; border-top: 1px solid #354869;}
footer ul.footer_navi {width: 1000px; margin: 0 auto; vertical-align: middle;}
footer ul.footer_navi li.footer_navi_menu {display: inline-block; -webkit-calc(100% / 5) ; width : calc(100% / 5 - 80px) ; margin: 0 2%; text-align: center;}
footer ul.footer_navi li.footer_navi_menu a {display: block; margin: 0 auto; padding: 0 0 5px; font-size: 16px; color: #354869; letter-spacing: 1px; font-family: "NotoSansCJKjp-Regular"; font-weight: 400; transition: border-bottom .4s; border-bottom: 1px solid #ffffff;}
footer ul.footer_navi li.footer_navi_menu:last-child a {font-size: 130%;}
footer ul.footer_navi li.footer_navi_menu a:active, footer ul.footer_navi li.footer_navi_menu a:hover {color: #354869; border-bottom: 1px solid #354869;}
footer ul.footer_navi li.footer_navi_menu:last-child a:active, footer ul.footer_navi li.footer_navi_menu:last-child a:hover {color: #354869; border-bottom: none;}
footer ul.footer_navi li.footer_navi_menu span.footer_spmenu {display: none;}
#copyright{width: 1000px; margin: 20px auto 30px; text-align: right;}
#copyright small {font-size: 12px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 2.0; letter-spacing: 0.1em; color: #354869;}

@media only screen and ( max-width : 1000px ) {
footer {width: 100%; margin: 0 auto; padding: 10px 0 0; text-align: center; border-top:none;}
footer ul.footer_navi {width: 100%; margin: 0 auto; vertical-align: middle; border-top: 1px solid #354869;}
footer ul.footer_navi li.footer_navi_menu {float: left; width: 50%; margin: 0 auto; padding: 8px 0; text-align: center;  border-bottom: 1px solid #354869;}
footer ul.footer_navi li.footer_navi_menu a {display: block; margin: 0 auto; padding: 0 0 5px; font-size: 16px; color: #354869; letter-spacing: 1px; font-family: "NotoSansCJKjp-Regular"; font-weight: 400; transition: border-bottom .4s; border-bottom: none;}
footer ul.footer_navi li.footer_navi_menu:last-child a {font-size: 100%;}
footer ul.footer_navi li.footer_navi_menu:nth-of-type(1), footer ul.footer_navi li.footer_navi_menu:nth-of-type(3) {border-right: 1px solid #354869;}
footer ul.footer_navi li.footer_navi_menu a:active, footer ul.footer_navi li.footer_navi_menu a:hover {color: #354869; border-bottom: none}
footer ul.footer_navi li.footer_navi_menu:last-child a:active, footer ul.footer_navi li.footer_navi_menu:last-child a:hover {color: #354869; border-bottom: none;}
footer ul.footer_navi li.footer_navi_menu span.footer_spmenu {display: inline-block;}
footer ul.footer_navi li.footer_navi_menu i.fa-instagram {display: none;}
#copyright{width: 100%; margin: 10px auto 30px; text-align: center;}
#copyright small {font-size: 12px; font-family: "NotoSansCJKjp-light"; font-weight: 100; line-height: 2.0; letter-spacing: 0.1em; color: #354869;}
}