@charset "UTF-8"; /* あまり触らないcssは管理 */
@import url("common_base.css"); .o-none,.f-none { display: none; }
@media screen and (min-width: 768px),print {
 /* ★ body */
body { font-family: "Zen Kaku Gothic New", sans-serif; font-weight: normal; font-size: 16px; letter-spacing: 0.05em; line-height: 30px; color: #070001; overflow-x: hidden; }
/* ★ header */
header { background-color: #F5F5E8; height: 96px; position: relative; .h-logo { width: 290px; top: 30px; left: 23px; position: absolute; img { width: 100%; }
 }
.h-txt { font-size: 14px; letter-spacing: 0.05em; line-height: 21px; color: #070001; position: absolute; top: 26px; left: 333px; }
 }
/* ★ メガメニュー関係 */
.pc-menu { position: fixed; top: 10px; right: 10px; z-index: 500; }
.pc-menu:hover { opacity: 0.8; cursor: pointer; cursor: hand; }
#pc-menu-open { display: none; background: #f8f8f8; width: 100vw; height: 100vh; position: fixed; top: 0; z-index: 10000; overflow: scroll; padding-top: 101px; }
#pc-menu-open .open-close-01 { position: absolute; top: 10px; right: 10px; }
#pc-menu-open .open-close-01:hover { opacity: 0.8; cursor: pointer; cursor: hand; }
#pc-menu-open .open-main-Box { }
.open-box { margin-bottom: 90px; .open-txt { font-weight: 500; font-size: 18px; letter-spacing: 0.18em; line-height: 33px; text-align: center; color: #070001; margin-bottom: 3px; }
.open-tel { width: 543px; margin: 0 auto; margin-bottom: 17px; display: flex; align-items: center; flex-wrap: wrap; position: relative; left: 1px; .open-ss1 { font-size: 15px; letter-spacing: 0.1em; line-height: 30px; text-align: center; color: #070001; position: relative; margin-right: 8px; }
.open-ss2 { font-family: "Work Sans", sans-serif; font-size: 49px; letter-spacing: 0.05em; line-height: 83px; text-align: left; color: #070001; }
 }
.open-list { width: 1100px; margin: 0 auto; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; li { width: 340px; }
 }
 }
.o-box { width: 1100px; margin: 0 auto; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; .o-none { display: block; }
.c-box-l { width: 421px; font-size: 16px; letter-spacing: 0.1em; line-height: 24px; }
.c-box-l .c-logo { width: 386px; margin-bottom: 18px; img { width: 100%; }
 }
.c-box-l .c-txt-01 { font-weight: 500; color: #070001; margin-bottom: 8px; }
.c-box-l .c-txt-02 { color: #070001; margin-bottom: 8px; }
.c-box-l .c-txt-03 { color: #070001; }
.c-box-r { width: 598px; margin-top: -2px; position: relative; left: 19px; }
.c-box-r .c-home-txt a { font-size: 14px; letter-spacing: 0.1em; line-height: 24px; text-align: left; color: #070001; display: block; margin-bottom: 68px; }
.c-box-r .c-home-txt  .c-home-ss-1 { }
.c-box-r .c-home-txt  .c-home-ss-2 { }
.c-link-box .c-en-01 { font-family: "Work Sans", sans-serif; font-weight: 600; font-size: 16px; letter-spacing: 0.04em; line-height: 28px; color: #070001; margin-bottom: -1px; }
.c-link-box .c-link-list { >li { a { font-size: 14px; letter-spacing: 0.1em; line-height: 30px; color: #070001; background-image: url(../images/common/o-deco.png); background-repeat: no-repeat; background-position: left 0px top 17px; padding-left: 16px; display: block; }
 }
 }
.c-link-box { display: flex; flex-wrap: wrap; }
.c-link-box .c-link-box-l { width: 263px; margin-right: 37px; }
.c-link-box .c-link-box-m { width: 118px; margin-right: 40px; }
.c-link-box .c-link-box-r { width: 140px; }
 }
#pc-menu-open .open-main-Box .ttl { margin-bottom: 30px; }
#pc-menu-open .open-main-Box .con-Box { margin-bottom: 30px; }
#pc-menu-open .list-Box .con-Box { margin-bottom: 30px; }
#pc-menu-open .open-close-02 { width: 300px; line-height: 1; cursor: pointer; font-weight: bold; margin: 0 auto; color: #fff; padding: 10px 50px; font-size: 1em; text-align: center; background: #000; }
/* ★ 下層 h1 エリア */
h1.main-title { background-color: #FAFAF5; height: 122px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
h1.main-title .jp { font-weight: 500; font-size: 22px; letter-spacing: 0.15em; color: #070001; }
h2.sub-title { background: #525252; padding: 25px 20px; color: #fff; margin-bottom: 30px; font-size: 28px; font-weight: bold; letter-spacing: 7px; text-align: center; }
/* ★ パンくず */
.seo_bread_list { max-width: 1920px; width: 100%; padding: 20px 20px; margin: 0 auto 30px; font-size: 16px; line-height: 1.4; text-align: right;}
.seo_bread_list li { margin-right: 20px; float: left; }
.seo_bread_list li::after { content: " >"; }
.seo_bread_list li:last-child::after { content: ""; }
/* ★ グローバルメニュー */
#g-nav { width: 1100px; margin: 0px auto 10px auto; padding: 20px 0; text-align: center; font-size: 0.875em; }
#g-nav li.list { position: relative; display: inline-block; margin-right: 2px; }
#g-nav li.list span { cursor: pointer; }
#g-nav li.list span,
#g-nav li.list a { border-right: 1px solid #999; display: block; text-align: center; padding: 10px 20px; }
#g-nav li.list:first-child a { border-left: 1px solid #999; }
#g-nav .dropmenu li.list ul.sub { visibility: hidden; opacity: 0; transition: 0s; position: absolute; top: 35px; left: 0; margin: 0; padding: 0; z-index: 500; width: 220px; }
#g-nav .dropmenu li.list:hover ul { visibility: visible; opacity: 1; display: block; }
#g-nav .dropmenu li.list ul li:last-child a { border-bottom: 1px solid #ccc; }
#g-nav .dropmenu li.list ul li a { visibility: hidden; opacity: 0; transition: 0.9s; background: #fff; display: block; width: 220px; padding: 10px; color: #000; border: 1px solid #ccc; border-bottom: none; }
#g-nav .dropmenu li.list:hover ul li a { visibility: visible; opacity: 1; }
/* ★ サイドバナー */
.side-fix { position: fixed; top: 120px; right: 0; z-index: 10; display: none; z-index: 100; }
/* ★ エンドバナー */
/*============================
#e
============================*/
#e { background-image: url(../images/common/e-bg.png); background-repeat: no-repeat; background-position: center bottom; margin-top: 129px; padding-bottom: 93px; .e-ttl { width: 312px; margin: 0 auto; margin-bottom: 12px; }
.e-txt { font-weight: 500; font-size: 16px; letter-spacing: 0.05em; text-align: center; color: #070001; margin-bottom: 43px; }
.e-bnr-list { width: 100%; max-width: 1800px; margin: 0 auto; margin-bottom: 40px; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; >li { width: 32.2%; background: linear-gradient(#3878e8 0%, #38b8e8 100%); box-shadow: 8px 8px 30px rgba(0, 0, 0, 0.3); }
 }
	.e-bnr-list li img{width: 100%;height: auto;}
.e-tel-box { width: 1200px; margin: 0 auto; .e-tel-txt-01 { font-weight: bold; font-size: 22px; letter-spacing: 0.18em; line-height: 33px; text-align: center; color: #070001; margin-bottom: 21px; }
.e-tel { width: 700px; margin: 0 auto; margin-bottom: 38px; }
.e-tel-list { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 19px; padding-left: 5px; li { background-image: url(../images/common/e-deco.svg); background-repeat: no-repeat; background-position: right 0 center; padding-right: 20px; margin-right: 20px; &:last-child { background-image: none; padding-right: 0; margin-right: 0; }
 }
.e-ss1 { font-size: 15px; letter-spacing: 0.1em; line-height: 30px; text-align: left; color: #070001; margin-right: 8px; position: relative; top: -4px; }
.e-ss2 { font-family: "Work Sans", sans-serif; font-weight: normal; font-size: 30px; letter-spacing: 0.05em; line-height: 52px; text-align: left; color: #070001; }
 }
.e-tel-txt-02 { font-size: 14px; letter-spacing: 0.1em; text-align: center; color: #070001; }
 }
 }
/* ★ page-top */
.page-top { position: fixed; bottom: 0; right: 0; }
/* ★ フッター */
.footer-bg { background-image: url(../images/common/f-bg.png); background-repeat: no-repeat; background-position: center 0; padding-top: 75px; padding-bottom: 73px; }
.f-box { max-width: 1620px; width: calc(100% - 100px); margin: 0 auto; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; .f-none { display: block; }
.c-box-l { width: 421px; font-size: 16px; letter-spacing: 0.1em; line-height: 24px; }
.c-box-l .c-logo { width: 386px; margin-bottom: 18px; img { width: 100%; }
 }
.c-box-l .c-txt-01 { font-weight: 500; color: #fff; margin-bottom: 8px; }
.c-box-l .c-txt-02 { color: #fff; margin-bottom: 8px; }
.c-box-l .c-txt-03 { color: #fff; }
.c-box-r { width: 598px; margin-top: -2px; position: relative; left: 19px; }
.c-box-r .c-home-txt a { font-size: 14px; letter-spacing: 0.1em; line-height: 24px; text-align: left; color: #fff; display: block; margin-bottom: 68px; }
.c-box-r .c-home-txt  .c-home-ss-1 { }
.c-box-r .c-home-txt  .c-home-ss-2 { }
.c-link-box .c-en-01 { font-family: "Work Sans", sans-serif; font-weight: 600; font-size: 16px; letter-spacing: 0.04em; line-height: 28px; color: #fff; margin-bottom: -1px; }
.c-link-box .c-link-list { >li { a { font-size: 14px; letter-spacing: 0.1em; line-height: 30px; color: #fff; background-image: url(../images/common/f-deco.png); background-repeat: no-repeat; background-position: left 0px top 17px; padding-left: 16px; display: block; }
 }
 }
.c-link-box { display: flex; flex-wrap: wrap; }
.c-link-box .c-link-box-l { width: 263px; margin-right: 37px; }
.c-link-box .c-link-box-m { width: 118px; margin-right: 40px; }
.c-link-box .c-link-box-r { width: 140px; }
 }
.copyright { max-width: 1620px; width: 100%; margin: 0 auto; display: block; font-weight: 300; font-size: 14px; letter-spacing: 0.1em; line-height: 24px; text-align: left; color: #fff; margin-top: 17px; a { color: #fff; }
 }
/* ★ コピーライト */ }
@media screen and (min-width: 766px) and (max-width: 1820px) {
 .f-box .f-box-r { left: 0; margin-right: 40px; }
 }


@media screen and (max-width: 767px) {
 /* ★ body */
 body { overflow: hidden; -webkit-text-size-adjust: 100%; font-family: "Zen Kaku Gothic New", sans-serif; font-weight: normal; font-size: 3.865vw; line-height: 7.246vw; color: #070001; }
/* ★ header */
header { height: 16.908vw; background-color: #FAFAF5; position: relative; }
.sp-header .h-logo { position: absolute; width: 46.86vw; top: 3.865vw; left: 4.106vw; }
.sp-header .h-menu { position: fixed; top: 0; right: 0; width: 16.908vw; z-index: 997; }
/* ★ メガメニュー関係 */
nav#sp-global-nav .h-logo { position: relative; width: 46.86vw; margin-top: 3.865vw; margin-left: 4.106vw; margin-bottom: 6.522vw; }
.open-box { .open-list { width: 83.575vw; margin: 0 auto; margin-bottom: 4.831vw; li { margin-bottom: 1.449vw; }
 }
.open-txt { font-weight: bold; font-size: 3.865vw; letter-spacing: 0.1em; line-height: 7.971vw; text-align: center; color: #070001; margin-bottom: 2.174vw; }
.open-tel { width: 83.575vw; margin: 0 auto; margin-bottom: 13.768vw; }
 }
.o-box { .c-box-l { display: none; }
.c-home-txt { font-family: "Work Sans", sans-serif; font-weight: 600; font-size: 4.589vw; letter-spacing: 0.04em; line-height: 6.763vw; color: #070001; margin-left: 4.106vw; margin-bottom: 8.696vw; .c-home-ss-2 { display: none; }
 }
.c-en-01 { font-family: "Work Sans", sans-serif; font-weight: 600; font-size: 4.589vw; letter-spacing: 0.04em; line-height: 6.763vw; color: #070001; margin-left: 4.106vw; margin-bottom: -0.966vw; }
.c-link-list { li a { display: block; background-image: url(../images/common/sp-o-deco-01.png),url(../images/common/sp-o-deco-02.png); background-repeat: no-repeat; background-position: 4.831vw 7.729vw,right 7.488vw top 6.763vw; background-size: 1.208vw,1.932vw; border-bottom: 1px solid #D1D1C7; padding-left: 7.729vw; padding: 3.623vw 7.729vw 3.623vw 7.246vw; font-size: 3.865vw; letter-spacing: 0.05em; color: #070001; }
 }
.c-link-box-l { margin-bottom: 9.42vw; }
.c-link-box-m { margin-bottom: 9.179vw; }
 }
nav#sp-global-nav { font-size: 1.4rem; z-index: 999; overflow: scroll; position: fixed; top: 0; width: 100vw; height: 100vh; display: none; background-color: #FAFAF5; box-sizing: border-box; padding-bottom: 40vw; }
nav#sp-global-nav .open-close-01 { position: fixed; top: 0; right: 0; width: 16.908vw; z-index: 998; }
nav#sp-global-nav .open-close-01 img { }
nav#sp-global-nav .list { margin: 12.077vw 0 4.831vw; }
nav#sp-global-nav .list li a { color: #fff; line-height: 1.4; text-decoration: none; padding: 5%; display: block; border-bottom: 1px solid #fff; }
/* ★ 下層 h1 エリア */
h1.main-title { height: 23.188vw; background-color: #FAFAF5; padding: 0 1em; font-weight: 500; font-size: 3.865vw; letter-spacing: 0.15em; color: #242424; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
h1.main-title .jp { display: block; font-size: 4vw; font-weight: bold; }
h2.sub-title { background: #525252; font-weight: bold; padding: 3%; color: #fff; margin-bottom: 5%; font-size: 5vw; letter-spacing: 0.966vw; text-align: center; }
/* ★ パンくず */
.seo_bread_list { display: none; }
/* ★ サイドバナー */
.sp-fix-list { position: fixed; bottom: 0; width: 100%; z-index: 996; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: flex-end; }
/* ★ エンドバナー */
/*============================
#e
============================*/
#e { background-image: url(../images/common/sp-e-bg.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100%; margin-top: 31.159vw; padding-bottom: 16.184vw; margin-top: 12.9vw; .e-ttl { width: 76.812vw; margin: 0 auto; margin-bottom: -0.483vw; }
.e-txt { font-weight: 500; font-size: 3.865vw; letter-spacing: 0.05em; text-align: center; color: #070001; margin-bottom: 6.522vw; }
.e-bnr-list { width: 91.787vw; margin: 0 auto; margin-bottom: 8.696vw; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; >li { width: 140.097vw; background: linear-gradient(#3878e8 0%, #38b8e8 100%); box-shadow: 8px 8px 30px rgba(0, 0, 0, 0.3); }
 }
.e-bnr-list li { margin-bottom: 6.763vw; &:last-child { margin-bottom: 0; }
 }
.e-tel-box { width: 91.787vw; margin: 0 auto; .e-tel-txt-01 { font-weight: bold; text-align: center; color: #070001; margin-bottom: 4.106vw; font-size: 4.348vw; letter-spacing: 0.1em; line-height: 7.971vw; }
.e-tel { width: 91.787vw; margin: 0 auto; margin-bottom: 6.039vw; }
.e-tel-list { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: -3.623vw; padding-left: 1.208vw; li { background-image: url(../images/common/sp-e-deco.svg); background-repeat: no-repeat; background-position: center bottom; padding-bottom: 2.657vw; margin-bottom: 5.072vw; &:last-child { background-image: none; padding-right: 0; margin-right: 0; }
 }
.e-ss1 { font-size: 3.623vw; letter-spacing: 0.1em; line-height: 7.246vw; text-align: center; color: #070001; display: block; padding-right: 1.208vw; margin-bottom: -0.966vw; }
.e-ss2 { font-family: "Work Sans", sans-serif; font-weight: normal; font-size: 7.246vw; letter-spacing: 0.05em; line-height: 12.56vw; text-align: left; color: #070001; }
 }
.e-ss3 { display: block; .no-supe { display: none; }
 }
.e-ss4 { display: none; }
.e-tel-txt-02 { font-size: 3.382vw; letter-spacing: 0.1em; text-align: center; color: #070001; letter-spacing: 0.1em; line-height: 5.797vw; }
 }
 }
/* ★ sp-page-top */
.sp-page-top { width: 83.575vw; margin: 0 auto; margin-bottom: 16.908vw; }
/* ★ フッター */
footer { }
.footer-bg { background-image: url(../images/common/sp-f-bg.png); background-repeat: no-repeat; background-position: center 0; background-color: cover; padding-top: 14.493vw; padding-bottom: 25.57vw; }
.f-box { max-width: 391.304vw; width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; .f-none { display: block; }
.c-box-l { width: 101.691vw; font-size: 3.865vw; letter-spacing: 0.1em; line-height: 5.797vw; text-align: center; color: #FFFFFF; a { color: #FFFFFF; }
 }
.c-box-l .c-logo { width: 66.667vw; margin: 0 auto; margin-bottom: 8.696vw; }
.c-box-l .c-txt-01 { font-size: 3.865vw; letter-spacing: 0.1em; line-height: 5.797vw; color: #fff; margin-bottom: 1.932vw; }
.c-box-l .c-txt-02 { color: #fff; margin-bottom: 1.932vw; }
.c-box-l .c-txt-03 { color: #fff; }
.c-box-r { display: none; }
.c-box-r .c-home-txt a { font-size: 3.382vw; letter-spacing: 0.1em; line-height: 5.797vw; text-align: left; color: #fff; display: block; margin-bottom: 16.425vw; }
.c-box-r .c-home-txt  .c-home-ss-1 { }
.c-box-r .c-home-txt  .c-home-ss-2 { }
.c-link-box .c-en-01 { font-family: "Work Sans", sans-serif; font-weight: 600; font-size: 3.865vw; letter-spacing: 0.04em; line-height: 6.763vw; color: #fff; margin-bottom: -0.242vw; }
.c-link-box .c-link-list { >li { a { font-size: 3.382vw; letter-spacing: 0.1em; line-height: 7.246vw; color: #fff; background-image: url(../images/common/c-deco.png); background-repeat: no-repeat; background-position: left 0 top 4.106vw; padding-left: 3.865vw; display: block; }
 }
 }
.c-link-box { display: flex; flex-wrap: wrap; }
.c-link-box .c-link-box-l { width: 63.527vw; margin-right: 8.937vw; }
.c-link-box .c-link-box-m { width: 28.502vw; margin-right: 9.662vw; }
.c-link-box .c-link-box-r { width: 33.816vw; }
 }
.copyright { max-width: 391.304vw; width: 100%; margin: 0 auto; display: block; font-weight: 300; text-align: center; color: #fff; margin-top: 18.599vw; font-size: 3.382vw; letter-spacing: 0.05em; line-height: 5.797vw; a { color: #fff; }
.ss-none { display: none; }
 }
 }
