@charset "utf-8";
/* CSS Document */

/* CSS Remedy */
*,::after,::before{box-sizing:border-box}html{line-sizing:normal}body{margin:0}[hidden]{display:none}h1{font-size:100%}h2{font-size:100%}h3{font-size:100%}h4{font-size:100%}h5{font-size:100%}h6{font-size:100%}h1{margin:.67em 0}pre{white-space:pre-wrap}hr{border-style:solid;border-width:1px 0 0;color:inherit;height:0;overflow:visible}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle;max-width:100%}audio:not([controls]){display:none}picture{display:contents}source{display:none}canvas,img,svg,video{height:auto}audio{width:100%}img{border-style:none}svg{overflow:hidden}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}

@media print{
   /*印刷用CSSで適用させる定義を記述*/
    .to_top{
        display: none;
    }
}

html {    
    overflow-x: hidden;
    overflow-y: scroll;
    font-size: 92.5%;
}

@media screen and (max-width: 1700px) {
  html {  
      font-size:90%;
	}
}

@media screen and (max-width: 1400px) {
    html {
      font-size:87.5%;
	}
}

@media screen and (max-width: 1300px) {
    html {
	   font-size:85%;
	}
}

@media screen and (max-width: 1200px) {
  html {
      font-size:72.5%;
	}    
}

/*-----------------------------------------------------------*/

body {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;    
    font-size: 1.15rem;/*17px*/
    -webkit-text-size-adjust: none;
	color: #333;
    overflow: hidden;
    font-style: normal;
    line-height: 1.5;
    background-color: #fcfaeb;
}

#all_wrap{
}

::-webkit-scrollbar-track {
  background: none;
}
::-webkit-scrollbar {
  width: 0px;
  height: 0px;
}
::-webkit-scrollbar-thumb {
  background: #ccc;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

*{
	margin: 0;
	padding: 0;
}

*:focus {
  outline: none;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: top;
	vertical-align: bottom;
}

.pc_hide {
	display: none !important;
}
.sp_hide {
}

a {
	font-size: 100%;
	outline: none;
	color: #1C1C1C;
	text-decoration:none;
    transition: 0.3s;
	opacity: 1;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    cursor:pointer;
}
a:hover{
	opacity: 0.5;
    transition: 0.3s;
}
/*電話番号のリンク（.tellink）はPCではOFF*/
a.tellink{
    pointer-events: none;
    color: #333;
}
a.deco:hover{
    opacity: 0.6;
}

ul{
    list-style-type: none;
}

input, textarea, select{
    /*bodyと同じフォントcssを入れる*/
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;    
    font-size: 1.15rem;/*17px*/
    -webkit-text-size-adjust: none;
	color: #333;
    overflow: hidden;
    font-style: normal;
    line-height: 1.5;
}
select{
    cursor: pointer;
}
input:-webkit-autofill {
    box-shadow: 0 0 0 1000px white inset;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
}
select::-ms-expand {
    display: none;
}

button{
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
}

input[type="file"], input[type=checkbox]{
    display: none;
}

/*-----------------------------------------------------------*/
/*フォント*/

.noto400{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;    
}
.noto500{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
}
.noto700{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
}
.noto800{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 800;
}
.noto900{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 900;
}
.montserrat400{
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
}
.montserrat500{
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
}
.montserrat700{
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
}
.montserrat800{
    font-family: "Montserrat", sans-serif;
    font-weight: 800;
}
.montserrat900{
    font-family: "Montserrat", sans-serif;
    font-weight: 900;
}

/*-----------------------------------------------------------*/
/*リンク*/

a.linktxt{
    color: #00ADA9;
    text-decoration: underline;
}

section a.border{
    position: relative;
    width: calc( 100% - 6.42rem );
    height: 100%;
    display: flex;
    align-items: center;
    border: 2px solid #00ADA9;
    font-weight: 700;
    color: #333;
    padding-left: 6.42rem;/*95*/
    background: #fff;
    z-index: 1;
    transition: .3s;
}
section a.border.center{
    width: 100%;
    padding-left: 0;
    justify-content: center;
}

section a.border::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: #00ADA9;
    transform-origin: 100% 50%;
    transform: scaleX(0);
    transition: transform ease .3s;
}
section a.border:hover {
    color: #fff;
    opacity: 1.0;
}
section a.border:hover::before {
    transform-origin: 0% 50%;
    transform: scaleX(1);
}

section a.brackets::after{
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 1.69rem;/*25*/
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    background: url("../image/common/icon_brackets_green.png") no-repeat;
    background-size: contain;
    width: 0.81rem;/*12*/
    height: 1.42rem;/*21*/
    left: auto;
    right: 1.35rem;/*20*/
}
section a.brackets:hover::after{
    background: url("../image/common/icon_brackets_white.png") no-repeat;
    background-size: contain;
}

section a.house{
    color: #333;
}
section a.house::after{
    content: '';
    display: block;
    background: url("../image/404/icon_house.png") no-repeat;
    background-size: contain;
    width: 1.82rem;/*27*/
    height: 1.82rem;/*27*/
    position: absolute;
    left: 1.82rem;/*27*/
}
section a.house:hover::after{
    background: url("../image/404/icon_househ.png") no-repeat;
    background-size: contain;
}

section a.beta{
    position: relative;
    width: calc( 100% - 6.42rem );
    height: 100%;
    display: flex;
    align-items: center;
    font-weight: 700;
    color: #fff;
    padding-left: 6.42rem;/*95*/
    border: 2px solid #00ADA9;
    box-sizing: border-box;
    background: #00ADA9;
    z-index: 1;
    transition: .3s;
}
section a.beta.center{
    width: 100%;
    padding-left: 0;
    justify-content: center;
}
section a.beta:hover {
    color: #fff;
    opacity: 1.0;
}
section a.beta.brackets::after{
    background: url("../image/common/icon_brackets_white.png") no-repeat;
    background-size: contain;
}
section a.beta.brackets.rev::after {
    transform: scale(-1, 1);
    top: 20px;
    left: 1.35rem;
    right: auto;    
}
section a.beta:hover{
    color: #00ADA9;
    background: #fff;
}
section a.beta.brackets:hover::after{
    background: url("../image/common/icon_brackets_green.png") no-repeat;
    background-size: contain;
}

/*-----------------------------------------------------------*/
#header_wrap{
    width: 100%;
    position: relative;
    z-index: 10;
}
#header_wrap .g-options{
    max-width: 87.84rem;/*1300*/
    height: 12.84rem;/*190*/
    margin: 0 auto;
    position: relative;
    border-left: 1px solid #00ada9;
    border-right: 1px solid #00ada9;
    border-bottom: 1px solid #00ada9;
    box-sizing: border-box;
    -webkit-border-bottom-right-radius: 15px;
    -webkit-border-bottom-left-radius: 15px;
    -moz-border-radius-bottomright: 15px;
    -moz-border-radius-bottomleft: 15px;
    border-bottom-right-radius: 15px;
    border-bottom-left-radius: 15px;
    background-color: #fff;
    display: flex;
    align-items: center;
    overflow: hidden;
    gap: 0.81rem 0;/*12*/
}
/*ipad縦向き時*/
@media screen and (min-width: 820px) and (orientation: portrait) {
    #header_wrap .g-options{
        max-width: 95%;
    }
}/*ここまで*/


#header_wrap .g-options .feature-block{
    width: calc( 100% - 31.92% );
}

/*-----------------------------------------------------------*/
/*メニュー左側：上部*/
#header_wrap .g-options .toppart{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 2.70rem;/*40*/
}
/*ロゴ*/
#header_wrap .g-options .logo{
    width: 31.92%;/*416*/
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #00ada9;
}
#header_wrap .g-options .logo a{
    display: flex;
    width: 25.00rem;/*370*/
    margin: 0 auto;
}
#header_wrap .g-options .logo a img{
    width: 100%;
    height: auto;
}

/*文字サイズボタン*/
#header_wrap .g-options dl.fontsize{
    min-width: 10.81rem;/*160*/
    display: flex;
    align-items: center;
    gap: 0 1.55rem;/*23*/
}
dl.fontsize dt{
}
dl.fontsize dd.switch-button{
    display: flex;
    position: relative;
    gap: 0 2.23rem;/*33*/
}
dl.fontsize dd.switch-button::after{
    content: '｜';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
dl.fontsize dd.switch-button button {
    font-size: 88.2%;/*15*/
}
dl.fontsize dd.switch-button input[type=radio] {
    display: none;
}
dl.fontsize dd.switch-button input:checked+label{
    color: #00ada9;
    border-bottom: 2px solid #00ada9;
}
dl.fontsize dd.switch-button button:nth-child(1) {
}
dl.fontsize dd.switch-button button:nth-child(2) {
}

/*背景色*/
#header_wrap .g-options dl.bg-area{
	min-width: 12.84rem;/*190*/
	display: flex;
	justify-content: space-between;
	align-items: center;
    gap: 0 1.35rem;/*20*/
}
#header_wrap .g-options dl.bg-area dt{
    font-size: 88.2%;/*15*/
    color: #00ada9;
}
#header_wrap .g-options dl.bg-area .list-color-choose{
	display: flex;
	justify-content: space-between;
    gap: 0 0.68rem;/*10*/
}
#header_wrap .g-options dl.bg-area .list-color-choose span{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1.76rem;/*26*/
	height: 1.76rem;/*26*/
	background: #fff;
	font-size: 82.35%;/*14*/
	letter-spacing: 0.05em;
	cursor: pointer;
    box-sizing: border-box;
}
#header_wrap .g-options dl.bg-area .list-color-choose span#control-cl-white{
	border: 1px solid #a6a6a6;
    box-sizing: border-box;
	color: #000;
}
#header_wrap .g-options dl.bg-area .list-color-choose span#control-cl-blue{
    background: #0000ff;
	color: #fff;
}
#header_wrap .g-options dl.bg-area .list-color-choose span#control-cl-yellow{
	background: #ffff00;
	color: #0000ff !important;
}
#header_wrap .g-options dl.bg-area .list-color-choose span#control-cl-black{
	background: #000 !important;
	color: #fff;
}
#header_wrap .g-options dl.bg-area .list-color-choose span:hover{
	opacity: 0.6;
}

/*YELLOW*/
html.pageYellow body {
    color: black !important;
    background-color: #F4E621 !important;
}
html.pageYellow body * {
    border-color: black !important;
}
/*BLACK*/
html.pageBlack body {
    color: white !important;
    background-color: black !important;
}
html.pageBlack body * {
    border-color: white !important;
	/*color: #fff !important;*/
}
/*BLUE*/
html.pageBlue body {
    color: white !important;
    background-color: #0071b4 !important;
}
html.pageBlue body * {
    border-color: white !important;
}

/*音声読み上げボタン*/
#header_wrap .g-options dl.reading{
    min-width: 2.36rem;/*35*/
}

/*お問い合わせボタン*/
#header_wrap .g-options dl.contactbtn{
    min-width: 14.19rem;/*210*/
}
#header_wrap .g-options dl.contactbtn a{
    width: 100%;
    height: 3.78rem;/*56*/
    -webkit-border-radius: 28px;
    -moz-border-radius: 28px;
    border-radius: 28px;  
    background-color: #ff626e;
    border: 2px solid #ff626e;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    color: #fff;
    font-weight: 500;
    line-height: 124%;
    padding-right: 2.03rem;/*30*/
    position: relative;
}
#header_wrap .g-options dl.contactbtn a::before{
    content: '';
    display: flex;
    background: url("../image/common/icon_mail.png") no-repeat;
    background-size: contain;
    width: 2.16rem;/*32*/
    height: 1.62rem;/*24*/
    position: absolute;
    top: 50%;
    left: 1.76rem;/*26*/
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
#header_wrap .g-options dl.contactbtn a:hover{
    background-color: #fff;
    color: #ff626e;
    opacity: 1.0;
}
#header_wrap .g-options dl.contactbtn a:hover::before{
    background: url("../image/common/icon_mailh.png") no-repeat;
    background-size: contain;
}

/*-----------------------------------------------------------*/
/*グローバルメニュー*/
#header_wrap #g-nav{
    margin: 0 auto;
}
#header_wrap #g-nav ul{
    width: 100%;
    height: 6.08rem;/*90*/
    display: flex;
    margin-top: 0.68rem;/*10*/
}
#header_wrap #g-nav ul li{
    padding: 0 2.36rem;/*35*/
    position: relative;
}
#header_wrap #g-nav ul li::before{
    content: '';
    display: block;
    width: 1px;
    height: 6.08rem;/*90*/
    background-color: #98D2CF;
    position: absolute;
    top: 0;
    right: 0;
}
#header_wrap #g-nav ul li:last-child::before{
    content: none;
}

#header_wrap #g-nav ul li a{
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    line-height: 124%;
    text-align: center;
    position: relative;
}
#header_wrap #g-nav ul li a:hover{
	opacity: 1.0;
}

#header_wrap #g-nav ul li a::before{
    content: '';
    display: block;
    width: 2.84rem;/*42*/
    height: 2.43rem;/*36*/
    margin-bottom: 0.68rem;/*10*/
    transition: 0.15s;
}
#header_wrap #g-nav ul li a:hover::before{
    transition: 0.15s;
}
#header_wrap #g-nav ul li:nth-child(1) a::before{
    background: url("../image/common/gnavi01.png") no-repeat, url("../image/common/gnavi01h.png") no-repeat;
    background-size: contain, 0 0;
}
#header_wrap #g-nav ul li:nth-child(2) a::before{
    background: url("../image/common/gnavi02.png") no-repeat, url("../image/common/gnavi02h.png") no-repeat;
    background-size: contain, 0 0;
}
#header_wrap #g-nav ul li:nth-child(3) a::before{
    background: url("../image/common/gnavi03.png") no-repeat, url("../image/common/gnavi03h.png") no-repeat;
    background-size: contain, 0 0;
}
#header_wrap #g-nav ul li:nth-child(4) a::before{
    background: url("../image/common/gnavi04.png") no-repeat, url("../image/common/gnavi04h.png") no-repeat;
    background-size: contain, 0 0;
}
#header_wrap #g-nav ul li:nth-child(5) a::before{
    background: url("../image/common/gnavi05.png") no-repeat, url("../image/common/gnavi05h.png") no-repeat;
    background-size: contain, 0 0;
}
#header_wrap #g-nav ul li:nth-child(1) a:hover::before{
    background: url("../image/common/gnavi01h.png") no-repeat;
    background-size: contain;
}
#header_wrap #g-nav ul li:nth-child(2) a:hover::before{
    background: url("../image/common/gnavi02h.png") no-repeat;
    background-size: contain;
}
#header_wrap #g-nav ul li:nth-child(3) a:hover::before{
    background: url("../image/common/gnavi03h.png") no-repeat;
    background-size: contain;
}
#header_wrap #g-nav ul li:nth-child(4) a:hover::before{
    background: url("../image/common/gnavi04h.png") no-repeat;
    background-size: contain;
}
#header_wrap #g-nav ul li:nth-child(5) a:hover::before{
    background: url("../image/common/gnavi05h.png") no-repeat;
    background-size: contain;
}

/*-----------------------------------------------------------*/
/*パンくずリスト*/
#breadcrumbs{
    width: 67.57rem;/*1000*/
    margin: 1.69rem auto 0;/*25*/
    display: flex;
    align-items: center;
}
#breadcrumbs ul{
    display: flex;
}
#breadcrumbs ul li{
    position: relative;
}
#breadcrumbs ul li:not(:first-child){
    padding-left: 2.36rem;/*35*/
}
#breadcrumbs ul li:not(:last-child)::before{
    content: '';
    display: block;
    background: url("../image/common/icon_pankuzu.png") no-repeat;
    background-size: contain;
    width: 0.61rem;/*9*/
    height: 1.01rem;/*15*/
    position: absolute;
    top: 1px;
    right: -1.35rem;/*20*/
}
#breadcrumbs ul li, #breadcrumbs ul li a{
    font-size: 94.12%;/*16*/
    line-height: 100%;
}
#breadcrumbs ul li:not(:last-child) a{
    font-size: 94.12%;/*16*/
    color: #00ADA9;
    text-decoration: underline;
    line-height: 100%;
}
#breadcrumbs ul li:last-child a{
    text-decoration: none;
    pointer-events: none;
}

/*-----------------------------------------------------------*/
/*アンカーリンク*/
#anchorlinks{
    width: 67.57rem;/*1000*/
    margin: 2.70rem auto 0;/*40*/
}

#anchorlinks ul{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 40px;/*40*/
}

#anchorlinks ul li{
    width: calc( 100% / 3 );
}
#anchorlinks ul li a{
    display: flex;
    width: 100%;
    height: 100%;
    padding: 1.01rem 4.39rem 1.01rem 1.01rem;/*15,65,15,15*/
    font-weight: 500;
    position: relative;
}
#anchorlinks ul li a::before{
    content: '';
    display: block;
    background: url("../image/common/icon_anchor.png") no-repeat;
    background-size: contain;
    width: 1.55rem;/*23*/
    height: 0.88rem;/*13*/
    position: absolute;
    top: 50%;
    right: 1.35rem;/*20*/
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transition: all .2s;
}
#anchorlinks ul li a::after{
    content: '';
    display: block;
    background-color: #00ADA9;
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
}
#anchorlinks ul li a:hover{
    opacity: 1.0;
    color: #00ada9;
}
#anchorlinks ul li a:hover::before{
    content: '';
    top: 57%;
}

/*コンテンツfit*/
#anchorlinks ul.obfit li{
    width: auto;
}
#anchorlinks ul.obfit li a{
    display: flex;
    width: 100%;
    height: 100%;
    padding: 1.01rem 3.72rem 1.01rem 1.01rem;/*15,55,15,15*/
    font-weight: 500;
    position: relative;
}

/*-----------------------------------------------------------*/
/*コアページ*/

#pagetitle{
    width: 100%;
    height: 22.36rem;/*331*/
    background: url("../image/about/title_bg.jpg") no-repeat;
    background-size: cover;
    margin: -3.38rem auto 0;/*50*/
    display: flex;
    justify-content: center;
    align-items: center;
}
#pagetitle dl{
    text-align: center;
}
#pagetitle dl dt{
    font-size: 482.35%;/*82*/
    color: #fff;
    text-transform: uppercase;
}
#pagetitle dl dd{
    width: fit-content;
    height: 3.38rem;/*50*/
    margin: 0 auto;
    padding: 0 2.03rem;/*30*/
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 188.24%;/*32*/
    color: #333;
    background-color: #E6F00F;
}

section .w1200{
    width: 81.08rem;
}
section .w1145{
    width: 77.36rem;
}
section .w1100{
    width: 74.32rem;
}
section .w1000{
    width: 67.57rem;
}
section .w1015{
    width: 68.58rem;
}
section .w1000{
    width: 67.57rem;
}
section .w990{
    width: 66.89rem;
}
/*ipad縦向き時*/
@media screen and (min-width: 820px) and (orientation: portrait) {
    section .w1200 {
        width: 80%;
    }

}/*ここまで*/


.cloudleft::before{
    content: '';
    display: block;
    background: url("../image/common/coa_cloudparts01.png") no-repeat;
    background-size: contain;
    width: 20.88vw;/*309*/
    height: 34.39vw;/*509*/
    position: absolute;
    left: 0;
    z-index: -1;
}
.cloudright::after{
    content: '';
    display: block;
    background: url("../image/common/coa_cloudparts02.png") no-repeat;
    background-size: contain;
    width: 21.01vw;/*311*/
    height: 34.46vw;/*510*/
    position: absolute;
    right: 0;
    z-index: -1;
}

section h2.square{
    font-size: 235.3%;/*40*/
    color: #00ADA9;
    padding-bottom: 1.69rem;/*25*/
    position: relative;
}
section h2.square::before{
    content: '';
    display: block;
    background: url("../image/common/coa_icon_hd.png") no-repeat;
    background-size: contain;
    width: 8.11rem;/*120*/
    height: 1.01rem;/*15*/
    position: absolute;
    bottom: 0;
    left: 0;
}

/*-----------------------------------------------------------*/
/*フッター*/

#footer_wrap{
    background-color: #00ADA9;
    position: relative;
    margin-top: 20.14rem;/*298*/
}
#footer_wrap::before{
    content: '';
    display: block;
    background: url("../image/common/footer_bgparts@2x.jpg") no-repeat;
    /*background-color: #00ADA9;*/
    background-size: 100% auto;
    width: 100%;
    height: 9.80rem;/*145*/
    position: absolute;
    top: -6.76rem;/*100*/
    left: 0;
    right: 0;
    margin: auto;
}
/*ipad縦向き時*/
@media screen and (min-width: 820px) and (orientation: portrait) {
    #footer_wrap::before{
        background-position: bottom center;
        background-color: #FCFAEB;
        top: -9.70rem;
    }
}/*ここまで*/

#footer_wrap::after{
    content: '';
    display: block;
    background: url("../image/common/footer_parts.png") no-repeat;
    background-size: contain;
    width: 79.80rem;/*1181*/
    height: 20.14rem;/*298*/
    z-index: 2;
    position: absolute;
    top: -20.14rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

#footer_wrap .inn{
    width: 30.74rem;/*455*/
    margin: 0 auto;
    color: #fff;
    text-align: center;
}
#footer_wrap .inn .sitename{
}
#footer_wrap .inn .sitename dl{
    position: relative;
    z-index: 1;
}
#footer_wrap .inn .sitename dl dt{
    font-size: 141.18%;/*24*/
}
#footer_wrap .inn .sitename dl dd{
    font-size: 188.24%;/*32*/
}
#footer_wrap .inn .logo{
    width: 13.38rem;/*198*/
    margin: 1.69rem auto 0;/*25*/
}
#footer_wrap .inn .logo img{
    width: 100%;;
    height: auto;
}
#footer_wrap .inn .address{
    margin: 2.03rem auto 0;/*30*/
    line-height: 180%;
}
#footer_wrap .inn .address a{
    color: #fff;
}

#footer_wrap #f-nav-list{
    width: 81.08rem;/*1200*/
    height: 8.78rem;/*130*/
    margin: 2.03rem auto 0;/*30*/
}
#footer_wrap #f-nav-list ul{
    padding: 1.01rem 0;/*15*/
    display: flex;
    border-top: 1px dotted #fff;
    border-bottom: 1px dotted #fff;
}
#footer_wrap #f-nav-list li{
    width: calc( 100% / 7 );
    position: relative;
}
#footer_wrap #f-nav-list li::before{
    content: '';
    display: block;
    width: 1px;
    height: 6.49rem;/*96*/
    background-color: #fff;
    position: absolute;
    top: 0;
    right: 0;
}
#footer_wrap #f-nav-list li:last-child::before{
    content: none;
}

#footer_wrap #f-nav-list li a{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 500;
    line-height: 124%;
    text-align: center;
    position: relative;
}
#footer_wrap #f-nav-list li a:hover{
    color: #e6f00f;
    opacity: 1.0;
}
#footer_wrap #f-nav-list li a::before{
    content: '';
    display: block;
    width: 2.77rem;/*41*/
    height: 2.36rem;/*35*/
    margin-bottom: 1.01rem;/*15*/
    transition: 0.15s;
}
#footer_wrap #f-nav-list li a:hover::before{
    transition: 0.15s;
}
#footer_wrap #f-nav-list li:nth-child(1) a::before{
    background: url("../image/common/fnavi01.png") no-repeat, url("../image/common/fnavi01h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(2) a::before{
    background: url("../image/common/fnavi02.png") no-repeat, url("../image/common/fnavi02h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(3) a::before{
    background: url("../image/common/fnavi03.png") no-repeat, url("../image/common/fnavi03h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(4) a::before{
    background: url("../image/common/fnavi04.png") no-repeat, url("../image/common/fnavi04h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(5) a::before{
    background: url("../image/common/fnavi05.png") no-repeat, url("../image/common/fnavi05h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(6) a::before{
    background: url("../image/common/fnavi06.png") no-repeat, url("../image/common/fnavi06h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(7) a::before{
    background: url("../image/common/fnavi07.png") no-repeat, url("../image/common/fnavi07h.png") no-repeat;
    background-size: contain, 0 0;
}
#footer_wrap #f-nav-list li:nth-child(1) a:hover::before{
    background: url("../image/common/fnavi01h.png") no-repeat;
    background-size: contain;
}
#footer_wrap #f-nav-list li:nth-child(2) a:hover::before{
    background: url("../image/common/fnavi02h.png") no-repeat;
    background-size: contain;
}
#footer_wrap #f-nav-list li:nth-child(3) a:hover::before{
    background: url("../image/common/fnavi03h.png") no-repeat;
    background-size: contain;
}
#footer_wrap #f-nav-list li:nth-child(4) a:hover::before{
    background: url("../image/common/fnavi04h.png") no-repeat;
    background-size: contain;
}
#footer_wrap #f-nav-list li:nth-child(5) a:hover::before{
    background: url("../image/common/fnavi05h.png") no-repeat;
    background-size: contain;
}
#footer_wrap #f-nav-list li:nth-child(6) a:hover::before{
    background: url("../image/common/fnavi06h.png") no-repeat;
    background-size: contain;
}
#footer_wrap #f-nav-list li:nth-child(7) a:hover::before{
    background: url("../image/common/fnavi07h.png") no-repeat;
    background-size: contain;
}

#footer_wrap #f-sns-icons{
    width: 21.62rem;/*320*/
    margin: 2.03rem auto 0;/*30*/
    display: none;
}
#footer_wrap #f-sns-icons ul{
    display: flex;
    justify-content: space-between;
}
#footer_wrap #f-sns-icons ul li a:hover{
    opacity: 0.6;
}

#footer_wrap .copy{
    padding: 4.05rem 0 2.70rem;/*60,40*/
    font-size: 111.8%;/*19*/
    color: #fff;
    text-align: center;
}

/*-----------------------------------------------------------*/
/*to top*/

#pagetop {
    position: fixed;
    right: 5%;
    bottom: 5%;
    z-index: 10;
    width: 6.49rem;/*96*/
    height: 6.49rem;/*96*/
}
#pagetop a{
    display: block;
    width: 100%;
    height: 100%;
    background: url("../image/common/totop.png") no-repeat, url("../image/common/totoph.png") no-repeat;
    background-size: contain, 0 0;
}
#pagetop a:hover{
    background: url("../image/common/totoph.png") no-repeat;
    background-size: contain;
    opacity: 1.0;
}

/*-----------------------------------------------------------*/
/*アニメーション*/

/*ズームアウト*/
.zoomOutTrigger, .afterloadzoomOut{
    opacity: 0;
}
.zoomOut{
    animation-name:zoomOutAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes zoomOutAnime{
    from {
      transform: scale(1.2);
      opacity: 0;
    }
    to {
      transform: scale(1.0);
      opacity: 1.0;
    }
}

/*フェードアップ*/
.fadeUpTrigger, .afterloadfadeUp{
    opacity: 0;
}
.fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
    transform: translateY(100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*ズームアップ*/
a.zoomup img{
    transition-duration: 0.3s;
}
a.zoomup:hover img{
    transform: scale(1.05);
    transition-duration: 0.3s;
}

/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/

