@charset "UTF-8";
/* 
  css設定 @charsetが消されるsass仕様へのハック用コメントです。削除しないでください。新規作成時も必須！
 */
/*==================================================================================
 common
==================================================================================*/
main .caption {
  font-size: 10px;
}

.allWrap:not(.en) .sectionTitle01 {
  padding-bottom: 40px;
  font-size: 125%;
}
.allWrap:not(.en) .sectionTitle01 span {
  padding: 0 5px 5px;
  border-bottom-width: 3px;
}
.allWrap:not(.en) .sectionTitle01.borderColor08 span {
  padding-bottom: 8px;
}
.allWrap:not(.en) .sectionTitle01.borderColor08 span:after {
  height: 3px;
}
.allWrap:not(.en) .sectionTitle02 {
  padding-bottom: 30px;
  line-height: 1.8;
  font-size: 131.25%;
}
.allWrap:not(.en) .sectionTitle03 {
  padding-bottom: 15px;
  font-size: 125%;
}
.allWrap:not(.en) .sectionTitle04 {
  padding-bottom: 30px;
  font-size: 125%;
}
.allWrap:not(.en) .sectionTitle04 .ja {
  margin-bottom: 10px;
  line-height: 1.7;
}
.allWrap:not(.en) .sectionTitle04 .ja.long {
  padding-bottom: 10px;
  border-bottom-width: 3px;
}
.allWrap:not(.en) .sectionTitle04 .en {
  line-height: 1.7;
  font-size: 75%;
}
.allWrap:not(.en) .sectionTitle04 .en.long {
  margin-top: 4px;
  padding-top: 10px;
  border-top-width: 3px;
}
.allWrap:not(.en) .sectionTitle05 {
  margin-bottom: 15px;
  font-size: 125%;
}
.allWrap:not(.en) .sectionTitle05 + .commonDefinition01 {
  padding-top: 20px;
}
.allWrap:not(.en) .commonList01 {
  margin: 0 auto;
  max-width: 70%;
  min-width: 300px;
}
.allWrap:not(.en) .commonList01 li {
  float: none;
  clear: both;
  width: auto;
}
.allWrap:not(.en) .commonList01 li:not(:nth-child(-n+3)) {
  padding-top: 0;
}
.allWrap:not(.en) .commonList01 li:not(:first-child) {
  padding-top: 30px;
}
.allWrap:not(.en) .commonList01 li:not(:nth-child(3n)) {
  padding-right: 0;
}
.allWrap:not(.en) .commonList01 li.comingsoon {
  height: 180px;
}
.allWrap:not(.en) .commonList01 li.comingsoon .image {
  height: 180px;
}
.allWrap:not(.en) .commonList01 li .image {
  margin-bottom: 10px;
}
.allWrap:not(.en) .commonList01 li .image img {
  width: 100%;
}
.allWrap:not(.en) .commonList01 li dl {
  padding: 0 10px;
  font-size: 87.5%;
}
.allWrap:not(.en) .commonList01 li dt,
.allWrap:not(.en) .commonList01 li p {
  padding-bottom: 3px;
}
.allWrap:not(.en) .commonList01 li dt:before,
.allWrap:not(.en) .commonList01 li p:before {
  top: 7px;
}
.allWrap:not(.en) .commonList01 li p {
  padding: 0 10px;
  font-size: 87.5%;
}
.allWrap:not(.en) .commonList01 li p.explanatory {
  font-size: 93.75%;
}
.allWrap:not(.en) .commonList02 li {
  float: none !important;
  clear: both;
  margin: 0 auto !important;
}
.allWrap:not(.en) .commonList02 li:not(:nth-child(-n+4)) {
  margin-top: 0;
}
.allWrap:not(.en) .commonList02 li:not(:first-child) {
  margin-top: 30px !important;
}
.allWrap:not(.en) .commonPageNavi {
  width: 300px;
}
.allWrap:not(.en) .commonPageNavi li {
  font-size: 93.75%;
}
.allWrap:not(.en) .commonPageNavi li.list {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.allWrap:not(.en) .commonPageNavi li a {
  padding: 10px 20px 15px;
}
.allWrap:not(.en) .commonPager01 {
  font-size: 14px;
}
.allWrap:not(.en) .commonPager01 a,
.allWrap:not(.en) .commonPager01 .current {
  height: 30px;
  line-height: 30px;
}
.allWrap:not(.en) .commonPager01 a:after,
.allWrap:not(.en) .commonPager01 .current:after {
  bottom: 3px;
}
.allWrap:not(.en) .commonPager01 .previouspostslink,
.allWrap:not(.en) .commonPager01 .nextpostslink {
  width: 60px;
}
.allWrap:not(.en) .commonPager01 .previouspostslink:before,
.allWrap:not(.en) .commonPager01 .nextpostslink:before {
  bottom: 1px;
  width: 4px;
  height: 4px;
}
.allWrap:not(.en) .commonPager01 .previouspostslink {
  margin-right: 5px;
}
.allWrap:not(.en) .commonPager01 .previouspostslink:before {
  left: 0;
  transform: rotate(135deg);
}
.allWrap:not(.en) .commonPager01 .nextpostslink {
  margin-left: 5px;
}
.allWrap:not(.en) .commonPager01 .nextpostslink:before {
  right: 0;
  transform: rotate(-45deg);
}
.allWrap:not(.en) .commonPager01 .page,
.allWrap:not(.en) .commonPager01 .current {
  margin: 0 3px;
  width: 16px;
}
.allWrap:not(.en) .commonPager01 .current:after {
  border-bottom: 1px dashed #000;
}
.allWrap:not(.en) .newsListArea li .tag,
.allWrap:not(.en) .newsListArea li .date {
  position: absolute;
  top: 0;
}
.allWrap:not(.en) .newsListArea li .text {
  margin-top: 0;
  padding: 24px 0 0;
  font-size: 93.75%;
}
.allWrap:not(.en) .movieEmbed {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25% !important;
}
.allWrap:not(.en) .movieEmbed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.allWrap:not(.en) .fbEmbed {
  width: 300px;
}
.allWrap:not(.en) .commonDefinition01 dt {
  padding-bottom: 15px;
  font-size: 112.5% !important;
}
.allWrap:not(.en) .commonDefinition01 + .commonDefinition01 {
  padding-top: 30px !important;
}
.allWrap:not(.en) article p + .commonDefinition01 {
  padding-top: 30px !important;
}

/*==================================================================================
 siteHeader
==================================================================================*/
/*==================================================================================
 siteFooter
==================================================================================*/
/*==================================================================================
 top
==================================================================================*/
#top .linksArea {
  padding-bottom: 60px;
}
#top .linksArea > ul {
  padding-top: 0;
}
#top .linksArea > ul:not(:last-child) {
  margin-bottom: 15px;
}
#top .linksArea > ul > li {
  padding-left: 0;
  width: auto;
}
#top .linksArea > ul > li:after {
  display: none;
}
#top .linksArea > ul > li .listTitle {
  position: static;
  display: block;
  padding: 15px 3%;
  background: #fff;
  transform: none;
}
#top .linksArea > ul > li ul {
  margin: auto;
  padding-top: 15px;
  width: 94%;
}
#top .linksArea > ul > li li {
  width: 31%;
}
#top .linksArea > ul > li li:nth-child(3n+1) {
  clear: both;
}
#top .linksArea > ul > li li:nth-child(n+4) {
  padding-top: 15px;
}
#top .linksArea > ul > li li:not(:nth-child(3n)) {
  padding-right: 3.5%;
}
#top:not(.en) .sections:not(:last-of-type) {
  padding-bottom: 60px;
}
#top:not(.en) .sections > header {
  position: relative;
}
#top:not(.en) .sections > header .viewAll {
  position: absolute;
  top: 6px;
  right: 0;
  text-align: center;
  line-height: 1;
  font-size: 81.25%;
}
#top:not(.en) .sections > header .viewAll a {
  position: relative;
  display: block;
  padding: 8px 20px 7px 13px;
  border: 1px solid #4d4d4d;
  color: #4d4d4d;
}
#top:not(.en) .sections > header .viewAll a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 12px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #4d4d4d;
  border-right: 1px solid #4d4d4d;
  transform: rotate(45deg) translateY(-50%);
}
#top:not(.en) section:not(.news) > header {
  padding-bottom: 30px;
  text-align: center;
}
#top:not(.en) section:not(.news) > header h3 {
  padding-bottom: 15px;
}
#top:not(.en) section:not(.news) > header .viewAll {
  display: inline-block;
  position: static;
}

/*==================================================================================
 lower common
==================================================================================*/
.lower main > .pageAnnotation {
  padding-top: 60px;
  text-indent: 1em;
}
.lower .pageTitle {
  padding-bottom: 40px;
  font-size: 125%;
}
.lower .commonList02 li .text {
  font-size: 81.25%;
}
.lower .sections:not(:last-of-type) {
  padding-bottom: 50px;
}
.lower .sections .text {
  font-size: 93.75%;
}
.lower .sections .textArea p {
  font-size: 93.75%;
}
.lower .sections .textArea p:not(:last-of-type) {
  padding-bottom: 20px;
}
.lower .sections > .image {
  padding: 40px 0;
}
.lower .sections > .image .text {
  padding: 5px 0 0;
  font-size: 81.25%;
}
.lower .sections > .attention {
  font-size: 62.5%;
}
.lower .sections > .attention span {
  padding: 10px 3%;
}
.lower .sections > .attention.pattern02 {
  padding-bottom: 100px;
}
.lower .sections .contactBtn {
  padding-top: 50px;
  max-width: 70%;
  min-width: 300px;
  font-size: 100%;
}
.lower .sections .contactBtn a {
  padding: 20px 0 20px 35px;
}
.lower .sections .contactBtn a:before {
  left: 50%;
  margin-left: -110px;
  width: 24px;
  height: 16px;
  background-size: 100% auto;
}
.lower .sections .contactBtn a:after {
  border-width: 8px;
}
.lower aside.commonSideColumn01 {
  position: static;
  padding-top: 60px;
  width: auto;
}
.lower aside.commonSideColumn01 .timeline {
  margin: 0 auto;
  width: 250px;
}
.lower aside.commonSideColumn01 .state dt {
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom-width: 3px;
}
.lower aside.commonSideColumn01 .state dd {
  line-height: 1.7;
}
.lower aside.commonSideColumn01 .state dd .date {
  display: block;
  line-height: 1.7;
}

/*==================================================================================
 detail common
==================================================================================*/
.allWrap.detail section.contents {
  max-width: none;
}
.allWrap.detail section.contents > header .representative {
  line-height: 1.4;
  text-align: center;
  font-size: 93.75%;
}
.allWrap.detail section.contents > header .representative span {
  display: block;
  padding: 0 0 10px;
}
.allWrap.detail section.contents article p {
  font-size: 93.75%;
}
.allWrap.detail section.contents article .image,
.allWrap.detail section.contents article p img {
  padding: 40px 0;
}
.allWrap.detail section.contents article .image + p,
.allWrap.detail section.contents article p img + p {
  margin-top: -15px;
}
.allWrap.detail section.contents article > img + dl {
  padding-top: 50px;
}
.allWrap.detail section.contents article p + dl,
.allWrap.detail section.contents article div + dl,
.allWrap.detail section.contents article dl + dl,
.allWrap.detail section.contents article a + dl {
  padding-top: 50px;
}
.allWrap.detail section.contents article p + ul,
.allWrap.detail section.contents article p + ol,
.allWrap.detail section.contents article div + ul,
.allWrap.detail section.contents article div + ol,
.allWrap.detail section.contents article dl + ul,
.allWrap.detail section.contents article dl + ol,
.allWrap.detail section.contents article a + ul,
.allWrap.detail section.contents article a + ol {
  padding-top: 30px;
}
.allWrap.detail section.contents article dl.state dd {
  position: relative;
  padding-left: 100px;
}
.allWrap.detail section.contents article dl.state dd + dd {
  margin-top: 10px;
  padding-top: 0;
}
.allWrap.detail section.contents article dl.state dd .date {
  position: absolute;
  top: 0;
  left: 0;
}
.allWrap.detail section.contents article dd {
  font-size: 93.75%;
}
.allWrap.detail section.contents article ol {
  font-size: 93.75%;
}
.allWrap.detail section.contents article ol li {
  counter-increment: listNum;
  line-height: 2;
  position: relative;
  padding-left: 2em;
}
.allWrap.detail section.contents article ol li:before {
  content: counter(listNum) " .";
  position: absolute;
  top: 0;
  left: 0;
}
.allWrap.detail section.contents article ol li:not(:last-child) {
  padding-bottom: 15px;
}
.allWrap.detail section.contents.sideColumnIn {
  padding-right: 0;
}
.allWrap.detail section.contents.sideColumnIn .commonPageNavi,
.allWrap.detail section.contents.sideColumnIn .contactBtn {
  right: 0;
}

/*==================================================================================
 about
==================================================================================*/
#about section.contents > header {
  padding-bottom: 50px;
}
#about section.contents > header .name {
  padding-right: 1em;
  text-indent: 1em;
  line-height: 1.8;
  font-size: 93.75%;
}
#about section.contents .image {
  float: none;
  clear: both;
  width: auto;
  padding: 0 0 40px;
}
#about section.contents .textArea {
  float: none;
  clear: both;
  width: auto;
}

/*==================================================================================
 about > philosophy
==================================================================================*/
#about.philosophy .section02 {
  padding-bottom: 50px;
}
#about.philosophy .section03,
#about.philosophy .section04 {
  float: none;
  padding-right: 0;
}
#about.philosophy .section03 .imageArea {
  position: static;
  padding-top: 30px;
  width: auto;
}
#about.philosophy .section03 .imageArea .caption {
  font-size: 100%;
}
#about.philosophy .section03 .imageArea .caption span {
  padding: 15px 50px 15px 30px;
  font-size: 75%;
}
#about.philosophy .section03 .imageArea .caption span:after {
  border-width: 14px;
}
#about.philosophy .section05 {
  position: relative;
}
#about.philosophy .section05 > header {
  float: none;
  clear: both;
  padding-bottom: 20px;
  width: auto;
}
#about.philosophy .section05 > header h2 {
  padding-bottom: 230px;
}
#about.philosophy .section05 .logo {
  float: none;
  clear: both;
  position: absolute;
  top: 50px;
  left: 0;
  padding: 0;
  width: 100%;
  text-align: center;
}
#about.philosophy .section05 .logo img {
  max-width: 180px;
}

/*==================================================================================
 about > outline
==================================================================================*/
#about.outline .section02 .steps li {
  padding-left: 0;
  text-indent: 0;
  font-size: 93.75%;
}

/*==================================================================================
 activity
==================================================================================*/
#activity section.contents > header {
  padding-bottom: 60px;
}
#activity section.contents > header .lead {
  max-width: none;
  font-size: 93.75%;
}
#activity section.contents .attention {
  padding-top: 60px;
}
#activity section.completion {
  margin-top: 80px;
  padding: 40px 0 60px;
}
#activity section.completion h2 {
  margin-bottom: 30px;
  padding: 10px 20px;
  font-size: 20px;
}

/*==================================================================================
 activity > salon
==================================================================================*/
/*==================================================================================
 activity > topics
==================================================================================*/
/*==================================================================================
 activity > other
==================================================================================*/
/*==================================================================================
 organization
==================================================================================*/
#organization .siteHeader {
  padding-bottom: 50px;
}
#organization .contents {
  width: auto;
}
#organization .memberTable {
  max-width: none;
}
#organization .memberTable th,
#organization .memberTable td {
  box-sizing: border-box;
  padding: 8px 8px 7px;
  line-height: 1.7;
  font-size: 81.25%;
}
#organization .memberTable th:first-of-type {
  width: 120px;
}

/*==================================================================================
 network
==================================================================================*/
#network section.contents > header {
  padding-bottom: 60px;
}
#network section.contents > header .lead {
  max-width: none;
  font-size: 93.75%;
}
#network section.contents .attention {
  padding-top: 60px;
}
#network.detail article .thumbnail {
  padding-bottom: 30px;
}
#network.detail section + section {
  padding-top: 80px;
}

/*==================================================================================
 access
==================================================================================*/
#access .sections {
  max-width: none;
}
#access .sections:not(:last-of-type) {
  padding-bottom: 60px;
}
#access .sections h2 {
  font-size: 106.25%;
}
#access .sections address p {
  font-size: 93.75%;
}
#access .sections .guideLink {
  padding-top: 15px;
  font-size: 93.75%;
}

/*==================================================================================
 interest
==================================================================================*/
#interest .sections {
  max-width: none;
}
#interest .sections .lead {
  padding-bottom: 10px;
  font-size: 93.75%;
}
#interest .sections .moreBtn {
  font-size: 93.75%;
}

/*==================================================================================
 error
==================================================================================*/
#error section.content h1 {
  padding-bottom: 60px;
  font-size: 125%;
}

/*==================================================================================
 sdgs
==================================================================================*/
#sdgs section.intro {
  padding-bottom: 80px;
}
#sdgs section.intro h2 img:first-child {
  width: 200px;
}
#sdgs section.intro h2 img:nth-child(2) {
  width: 60px;
}
#sdgs section.intro .wrapper {
  margin-top: 30px;
}
#sdgs section.intro .wrapper .text {
  width: auto;
}
#sdgs section.intro .wrapper .imageArea {
  position: static;
  padding-top: 30px;
  width: auto;
  transform: none;
}
#sdgs section.intro .wrapper .imageArea .caption {
  font-size: 100%;
}
#sdgs section.intro .wrapper .imageArea .caption span {
  padding: 15px 50px 15px 30px;
  font-size: 75%;
}
#sdgs section.intro .wrapper .imageArea .caption span:after {
  border-width: 14px;
}
#sdgs section.projectTables table {
  width: 500px;
  font-size: 13px;
}
#sdgs section.projectTables table th,
#sdgs section.projectTables table td {
  box-sizing: border-box;
  padding: 10px 15px;
}
#sdgs section.projectTables table th img,
#sdgs section.projectTables table td img {
  padding-top: 3px;
  max-width: 46px;
}
#sdgs section.projectTables table th img:not(:nth-child(4n)),
#sdgs section.projectTables table td img:not(:nth-child(4n)) {
  padding-right: 8px;
}
#sdgs section.projectTables table th:first-child {
  width: 150px;
}
#sdgs section.projectTables table th:nth-child(2) {
  width: 110px;
}
#sdgs section.projectTables table td a:before {
  top: 6px;
}

/*==================================================================================
 en common
==================================================================================*/
/*==================================================================================
 common
==================================================================================*/
.allWrap.en .sectionTitle01 {
  font-weight: bold;
}

/*==================================================================================
 siteHeader
==================================================================================*/
.allWrap.en .siteHeader .handaiLogo {
  top: -100px;
}
.allWrap.en .siteHeader .fontSizeChange {
  right: 200px;
}
.allWrap.en .siteHeader .languageBtns {
  right: 120px;
}
.allWrap.en .siteHeader .searchBtn {
  padding-left: 24px;
  font-size: 87.5%;
}
.allWrap.en .siteHeader .searchArea .gsc-search-button {
  background-image: url("../img/en/common/btn-search.jpg");
}

/*==================================================================================
 siteFooter
==================================================================================*/
.allWrap.en .siteFooter .logos {
  padding-bottom: 12px;
}

/*==================================================================================
 en top
==================================================================================*/
/*==================================================================================
 en lower
==================================================================================*/

/*# sourceMappingURL=smartphone.css.map */
