@charset "utf-8";
/* ============================================================
 base
============================================================ */
.en {
    font-family: 'Montserrat', sans-serif;
    font-weight: 200;
}
/* ============================================================
 clearfix
============================================================ */
.clearfix {
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
/* ============================================================
 Text選択
============================================================ */
::selection {
    background: #97999b;
    color: #000;
}
::-moz-selection {
 background: #97999b;
 color: #000;
}
/* ============================================================

============================================================ */
@font-face {
    font-family: 'Noto Sans Japanese Light';
    font-style: normal;
    font-weight: 300;
    src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
}
html {
    font-size: 625%;
}
body {
    font-family: 'YuGothic Medium', '游ゴシック Medium', 'YuGothic', '游ゴシック', '游ゴシック体', 'Noto Sans Japanese Light', sans-serif;
    background: #fff;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    color: #404040;
    min-width: 100%;
    width: 100%;
    z-index: 0;
	line-height: 1.4em
}
html, body {
    height: 100%;
    padding: 0;
    margin: 0;
}
body {
	font-size: .16em;
}
* {
    box-sizing: border-box;
}
a {
    color: #404040;
    text-decoration: none;
    transition: all .3s;
}
a:hover {
    color: #a1a1a1;
    text-decoration: none;
}
img {
    width: 100%;
    max-width: 100%;
	line-height: 1.2em;
    vertical-align: middle;
    display: block;
}
figure img {
    width: 100%;
    max-width: 100%;
    vertical-align: middle;
    display: block;
}

strong{
    font-weight: bolder;
}

#main {
    /*padding-top: 100px;*/
    position: relative;
    overflow: hidden;
}
/* ページ内リンク */
.page-anc {
    margin-top: -120px;
    padding-top: 120px;
    display: inline-block;
    position: relative;
}
.page-anc-block {
    margin-top: -120px;
    padding-top: 120px;
    display: block;
    position: relative;
}
/* ============================================================
 inner
============================================================ */
.section_area{
	padding:50px 0;
}
.inner_1100 {
    max-width: 1100px;
	margin: 0 auto;
	position: relative;
}
.inner_1100a {
	font-size: 24px;
}

.inner_900 {
    max-width: 900px;
	width: 900px;
	margin: 0 auto;
	position: relative;
}
.inner_670 {
    max-width: 670px;
	width: 670px;
	margin: 0 auto;
	position: relative;
}
@media screen and (min-width: 799px) and (max-width: 989px) {
.inner_1100 {
    margin: 0 auto;
    width: 100%;
    padding: 0 2%;
}
.inner_900 {
	max-width: 100%;
    width: 100%;
	margin: 0 auto;
	position: relative;
}
.inner_670 {
	max-width: 100%;
    width: 100%;
	margin: 0 auto;
	position: relative;
}
}

@media only screen and (max-width: 798px) {
.inner_1100a {
	font-size: 16px;
}
	
.section_area{
	padding:10% 0;
}
.section_inner {
    padding: 0;
}
.section_inner_gla {
    padding: 2% 0 0 0;
}
.section_inner_supplement {
    padding: 2%;
}
.inner_1100 {
    margin: 0 auto;
	max-width: 100%;
    width: 100%;
    padding: 0 4%;
}
.inner_900 {
    margin: 0 auto;
    max-width: 100%;
	width: 100%;
    padding: 0 4%;
}
.inner_670 {
    margin: 0 auto;
    max-width: 100%;
	width: 100%;
    padding: 0 2%;
}
}


/* ============================================================
 PC/SP
============================================================ */
@media only screen and ( min-width : 799px ) {
.sp {
    display: none;
}
}

@media only screen and ( max-width : 798px ) {
.pc {
    display: none;
}
}
/* ============================================================
 typography
============================================================ */
.bold {
    font-weight: bold;
}
.txt-center {
    text-align: center;
}
.txt-left {
    text-align: left;
}
.txt-right {
    text-align: right;
}
.txt-gray {
    color: #97999b;
}
.txt-red {
    color: #e60000;
}
.txt-white {
    color: #fff;
}
.txt-bg-red {
    background:#db3f4f;
}
.txt-ul {
    text-decoration: underline;
}
.txtsmall {
    font-size: .12rem;
	font-weight: normal;
}
.txtsmall .blank:after, .txtsmall.blank:after {
    bottom: 1px !important;
    margin-top: 0;
    top: auto;
}
.font10 {
    font-size: .10rem;
}
.font12 {
    font-size: .12rem;
}
.font14 {
    font-size: .14rem;
}
.note {
    text-indent: -1em;
    padding-left: 1em;
}

.orange_line {background:linear-gradient(transparent 60%, #b7a978 0%) ;}
.gray_line {background:linear-gradient(transparent 60%, #ededed 0%) ;}
.red_line {background:linear-gradient(transparent 60%, #d53545 0%) ;}
.black_line {background:linear-gradient(transparent 60%, #404040 0%) ;}

@media only screen and ( max-width : 798px ) {
p {
    font-size: .14rem;
}
}
/* ============================================================
balloon
============================================================ */
.balloon{
  position: relative;
  width: 120px;
  height: 120px;
  background: #ef887e;
  padding: 2em;
  line-height: 60px;
  text-align:center;
  border-radius: 50%;
}
.balloon:after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  right: 3px;
  bottom: 3px;
  border-style: solid;
  border-color: transparent transparent transparent #ef887e;
  border-width: 10px 0 10px 17.32px;
  transform: rotate(45deg);
}


/* ============================================================
bg
============================================================ */
.bg1{
    background-image: url("../img/lp_bg_pc.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
@media only screen and (max-width: 798px) {
    .bg1{
        width: 100%;
        height: auto;
        position: relative;
        background-image: url("../img/lp_bg_pc.png");
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
    }
}
.bg3{
	background: #ededed;
    position: relative;
}
.bg3::after{
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    bottom: -40px;
    left: 0;
    right: 0;
    margin: auto;
    border: 28px solid transparent;
    border-top-color: transparent;
    border-top-style: solid;
    border-top-width: 28px;
    border-top-color: transparent;
    border-top-style: solid;
    border-top-width: 28px;
    border-top: 12px solid #ededed;
    z-index: 200;
}


.fixed-bg {
  min-height: 100vh;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}


/* ============================================================
 utility
============================================================ */
.img-auto {
    width: auto;
    max-width: 100%;
}
.img-50 {
    width: auto;
    zoom: .5;
    max-width: 100%;
}
.float-right {
    float: right;
}
.float-left {
    float: left;
}
.border {
    border: 1px solid #bababa;
    padding: 10px;
}
.block {
    display: block;
}
.inline-block {
    display: inline-block;
}
.display-table {
    display: table;
    width: 100%;
}
.ov-hidden {
    overflow: hidden;
}
.ov-visible {
    overflow: visible;
}
.inline-list li {
    display: inline-block;
}
.center-block {
    margin-left: auto;
    margin-right: auto;
}
.vhm {
    vertical-align: middle;
}
/* ============================================================
 margin
============================================================ */
.pt0 {
    padding-top: 0!important;
}
.mt0 {
    margin-top: 0!important;
}
.mb0 {
    margin-bottom: 0!important;
}
.ml0 {
    margin-left: 0!important;
}
.mr0 {
    margin-right: 0!important;
}
.mt5 {
    margin-top: 5px!important;
}
.mb5 {
    margin-bottom: 5px!important;
}
.ml5 {
    margin-left: 5px!important;
}
.mr5 {
    margin-right: 5px!important;
}
.mt10 {
    margin-top: 10px!important;
}
.mb10 {
    margin-bottom: 10px!important;
}
.ml10 {
    margin-left: 10px!important;
}
.mr10 {
    margin-right: 10px!important;
}
.mt20 {
    margin-top: 20px!important;
}
.mb20 {
    margin-bottom: 20px!important;
}
.ml20 {
    margin-left: 20px!important;
}
.mr20 {
    margin-right: 20px!important;
}
.mt30 {
    margin-top: 30px!important;
}
.mb30 {
    margin-bottom: 30px!important;
}
.ml30 {
    margin-left: 30px!important;
}
.mr30 {
    margin-right: 30px!important;
}
.mt40 {
    margin-top: 40px!important;
}
.mb40 {
    margin-bottom: 40px!important;
}
.ml40 {
    margin-left: 40px!important;
}
.mr40 {
    margin-right: 40px!important;
}
.mt50 {
    margin-top: 50px!important;
}
.mb50 {
    margin-bottom: 50px!important;
}
.ml50 {
    margin-left: 50px!important;
}
.mr50 {
    margin-right: 50px!important;
}
.mt60 {
    margin-top: 60px!important;
}
.mb60 {
    margin-bottom: 60px!important;
}
.ml60 {
    margin-left: 60px!important;
}
.mr60 {
    margin-right: 60px!important;
}
.mt70 {
    margin-top: 70px!important;
}
.mb70 {
    margin-bottom: 70px!important;
}
.ml70 {
    margin-left: 70px!important;
}
.mr70 {
    margin-right: 70px!important;
}
.mt80 {
    margin-top: 80px!important;
}
.mb80 {
    margin-bottom: 80px!important;
}
.ml80 {
    margin-left: 80px!important;
}
.mr80 {
    margin-right: 80px!important;
}
.mt90 {
    margin-top: 90px!important;
}
.mb90 {
    margin-bottom: 90px!important;
}
.ml90 {
    margin-left: 90px!important;
}
.mr90 {
    margin-right: 90px!important;
}
.mt100 {
    margin-top: 100px!important;
}
.mb100 {
    margin-bottom: 100px!important;
}
.ml100 {
    margin-left: 100px!important;
}
.mr100 {
    margin-right: 100px!important;
}
.mt120 {
    margin-top: 120px!important;
}
.mb120 {
    margin-bottom: 120px!important;
}
.ml120 {
    margin-left: 120px!important;
}
.mr120 {
    margin-right: 120px!important;
}
.plr50 {
    padding-left: 50px;
    padding-right: 50px;
}

@media only screen and (max-width: 798px) {
/* ============================================================
 utility
============================================================ */
.sp-floatclear {
    float: none;
}
/* ============================================================
 margin
============================================================ */
.sp-pt0 {
    padding-top: 0!important;
}
.sp-mt0 {
    margin-top: 0!important;
}
.sp-mt30 {
    margin-top: 30px!important;
}
.sp-mb0 {
    margin-bottom: 0!important;
}
.sp-ml0 {
    margin-left: 0!important;
}
.sp-mr0 {
    margin-right: 0!important;
}
}

/* ============================================================
 header
============================================================ */
#header {
    width: 100%;
    height: 60px;
    background: linear-gradient(90deg,#005bac, #00a0ce, #008a5e);
}
#header .header_1100{
    width: 1100px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
#header div.logo_shiga {
    width: 180px;
	padding: 10px 0;
}
#header div.logo_ma {
    width: 240px;
	padding: 15px 0;
}


@media only screen and (max-width: 798px) {
#header {
    width: 100%;
    height: auto;
    background: linear-gradient(90deg,#005bac, #00a0ce, #008a5e);
}
#header h1 {
    width: 100%;
    margin: 0 auto;
	padding: 2% 0;
}
#header .header_1100{
    width: 100%;
    margin: 0 auto;
    padding:0 2%;
    display: flex;
}
#header div.logo_shiga {
    width: 120px;
	padding: 3% 0;
}
#header div.logo_ma {
    width: 180px;
	padding: 3% 0;
}
#header h1 img {
	min-width: 120px;
    width:18%;
	margin: 0 auto;
}
}
/* ============================================================
 footer
============================================================ */
#footer {
    width: 100%;
	background-image: linear-gradient(-90deg, #005bac, #00a0ce, #008a5e);
    padding: 5px 0;
}
#footer .copyright {
    text-align: center;
    font-size: .12rem;
	color: #ccc;
}

@media only screen and (max-width: 798px) {
#footer {}
}

/* ============================================================
 プリント用
============================================================ */
@media print {
.print-hidden, header, #foot-item, #footer {
    display: none !important;
}
}
/* ============================================================
 clearfix
============================================================ */
/* micro clearfx */
.cf:before, .cf:after {
    content: "";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    zoom: 1;
} /* For IE 6/7 */
