/*common_css*/
/* Box sizingの定義 */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* デフォルトのpaddingを削除 */
ul[class],
ol[class] {
  padding: 0;
}

/* デフォルトのmarginを削除 */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

/* bodyのデフォルトを定義 */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* class属性を持つul、ol要素のリストスタイルを削除 */
ul[class],
ol[class] {
  list-style: none;
}

/* classを持たない要素はデフォルトのスタイルを取得 */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* img要素の扱いを簡単にする */
img {
  max-width: 100%;
  display: block;
}

/* article要素内の要素に自然な流れとリズムを定義 */
article > * + * {
  margin-top: 1em;
}

/* inputやbuttonなどのフォントは継承を定義 */
input,
button,
textarea,
select {
  font: inherit;
}

/***幅指定***/
[data-w-width] {
    max-width: 100%;
}

/*コンテンツ幅での設置*/
[data-w-width="1"] {
    width: 1780px;
    width:1170px;
    margin: 0 auto;
}
@media (max-width: 1169px) {
    [data-w-width="1"] {
        width: calc(100% - 5%);
    } 
}
@media (max-width: 768px) {
    [data-w-width="1"] {
        width: calc(100% - 12%);
    } 
}
/*リソース設定無い場合とリソース設定がある場合。*/
/*margin設定はデザインによって変更OK*/

/*ウィンドウ幅での設置*/
[data-w-width="0"] {
    width: 100%;
}

/***基本設定***/
html {
    font-size: 62.5%;
}
/*パーツ内ではremで余白やフォントサイズの指定を行うため、この数値*/

body {
    background: #ffffff;
    background:#f5f5f5;
    color: #313131;
    color:#313131;

    line-height: 1.6;
    font-size: 1.6rem;
}
@media (max-width: 768px) {
    body {
        font-size:4vw;
    }
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/***色指定***/
.-w-txt.-w-background {
    color: #fff;
    color:#f5f5f5;
}
.-w-txt.-w-background-r {
    color: #000;
    color:#313131;
}
.-w-txt.-w-main {
    color: #001754;
    color:#707070;
}
.-w-txt.-w-main-r {
    color: #fff;
    color:#ffffff;
}
.-w-txt.-w-accent {
    color: #4f0506;
    color:#212222;
}
.-w-txt.-w-accent-r {
    color: #fff;
    color:#ffffff;
}
/*背景色＋テキスト色*/
.-w-bg.-w-background {
    background: #fff;
    background:#f5f5f5;
    color: #000;
    color:#313131;
}
.-w-bg.-w-main {
    background: #001754;
    background:#707070;
    color: #fff;
    color:#ffffff;
}
.-w-bg.-w-accent {
    background: #4f0506;
    background:#212222;
    color: #fff;
    color:#ffffff;
}
/*反転ver*/
.-w-bg.-w-background-r {
    background: #000;
    background:#313131;
    color: #fff;
    color:#f5f5f5;
}
.-w-bg.-w-main-r {
    background: #fff;
    background:#ffffff;
    color: #001754;
    color:#707070;
}
.-w-bg.-w-accent-r {
    background: #fff;
    background:#ffffff;
    color: #4f0506;
    color:#212222;
}
/*hover時背景色指定*/
a.-w-bg.-w-background:hover {
    background: #000;
    background:#313131;
    color: #fff;
    color:#f5f5f5;
}
a.-w-bg.-w-main:hover {
    background: #fff;
    background:#ffffff;
    color: #001754;
    color:#f5f5f5;
}
a.-w-bg.-w-accent:hover {
    background: #fff;
    background:#ffffff;
    color: #4f0506;
    color:#212222;
}
a.-w-bg.-w-background-r:hover {
    background: #fff;
    background:#f5f5f5;
    color: #000;
    color:#313131;
}
a.-w-bg.-w-main-r:hover {
    background: #001754;
    background:#707070;
    color: #fff;
    color:#ffffff;
}
a.-w-bg.-w-accent-r:hover {
    background: #4f0506;
    background:#212222;
    color: #fff;
    color:#ffffff;
}

/***ボーダー色指定***/
.-w-bd.-w-background {
    border-color: #fff;
    border-color:#f5f5f5;
}
.-w-bd.-w-main {
    border-color: #001754;
    border-color:#707070;
}
.-w-bd.-w-accent {
    border-color: #4f0506;
    border-color:#212222;
}
.-w-bd.-w-background-r {
    border-color: #000;
    border-color:#313131;
}
.-w-bd.-w-main-r {
    border-color: #fff;
    border-color:#ffffff;
}
.-w-bd.-w-accent-r {
    border-color: #fff;
    border-color:#ffffff;
}
/*hover時ボーダー色指定*/
a.-w-bd.-w-bg.-w-background-r:hover,
a.-w-bd.-w-background:hover {
    border-color: #000;
    border-color:#313131;
}
a.-w-bd.-w-bg.-w-main-r:hover,
a.-w-bd.-w-main:hover {
    border-color: #fff;
    border-color:#ffffff;
}
a.-w-bd.-w-bg.-w-accent-r:hover,
a.-w-bd.-w-accent:hover {
    border-color: #fff;
    border-color:#ffffff;
}
a.-w-bd.-w-bg.-w-background:hover,
a.-w-bd.-w-background-r:hover {
    border-color: #000;
    border-color:#f5f5f5;
}
a.-w-bd.-w-bg.-w-main:hover,
a.-w-bd.-w-main-r:hover {
    border-color: #001754;
    border-color:#707070;
}
a.-w-bd.-w-bg.-w-accent:hover,
a.-w-bd.-w-accent-r:hover {
    border-color: #4f0506;
    border-color:#212222;
}


/*見出し設定*/
.-w-ttl_wrap {
    text-align: center;
}
.-w-section_inner h3.-w-general{
    text-align: center;
}
span.-w-general{
    font-size: 3.0rem;
    margin-bottom: 4rem;
    display: block;
    line-height: 1.0;
    color:#313131;
    color:rgba(49,49,49,1);
    font-weight: bold;
}
h2.-w-general{
    font-size: 2rem;
    margin-bottom: 2rem;
    color:#313131;
    color:rgba(49,49,49,1);
}
h3.-w-general{
    font-size: 1.8rem;
    margin-bottom: 5rem;
    color:#EA7C5D;
    color:rgba(112,112,112,1);
}
h4.-w-general {
    font-size: 1.8rem;
    color:#313131;
    color:rgba(49,49,49,1);
    margin-bottom: 5rem;
}
@media (max-width: 768px) {
    .-w-ttl_wrap {
        text-align: left;
    }
    h3.-w-general{
        font-size: 5vw;
    }
    h4.-w-general {
        font-size: 4vw;
    }
}
/*フェード*/
@media (min-width: 1024px) {
    .-w-anime-fade {
    	opacity: 0;
    	transition: all .5s ease-in-out;
    	transform: translateY(50px);
    }
    .-w-anime-fade.active {
    	opacity: 1;
    	transform: translateY(0px);
    }
    
    .-w-anime-fade:nth-child(2){
        transition-delay:0.2s;
    }
    .-w-anime-fade:nth-child(3){
        transition-delay:0.4s;
    }
    .-w-anime-fade:nth-child(4){
        transition-delay:0.6s;
    }
    .-w-anime-fade:nth-child(5){
        transition-delay:0.8s;
    }
    .-w-anime-fade:nth-child(6){
        transition-delay:1s;
    }
    .-w-anime-fade:nth-child(n+7){
        transition-delay:1.2s;
    }
}

/*ボタン*/
.-w-more_btn{
    margin-top:40px;
    text-align: center;
}    
.-w-more_btn a{
    display: inline-block;
	position: relative;
	text-decoration: none;
	border: 2px solid;
	-webkit-transition: all .3s;
	transition: all .3s;
	padding: 8px 5px;
    line-height: 1;
	text-align: center;
	min-width: 170px;
	background-color:#ff6600;
	color:#ffffff;
	border-color:#ff6600;
	color:rgba(33,34,34,1);
	background-color:rgba(255,255,255,1);
	border-color:rgba(33,34,34,1);
}
.-w-more_btn a:hover{
    opacity: 1;
	background-color:#ffffff;
	color:#ff6600;
	background-color:rgba(33,34,34,1);
	color:rgba(255,255,255,1);
}
@media (max-width: 768px) {
    .-w-more_btn a{
    	padding: 30px 10px;
    	min-width: 100%;
    	font-size: 4vw;
    }
}


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


    body {
    	font-family: source-han-sans-cjk-ja, sans-serif;
    	font-weight: 300;
    	font-style: normal;
        
        font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif;
        
        font-weight:400;
    }
        
    /*見出しフォント*/
	.-w-font_title1{
        /* font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif,sans-serif; */
        font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif;
        
        font-weight:400;
    }
    /*MVフォント*/
	.-w-font_title2{
        /* font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif,sans-serif; */
        font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif;
        
        font-weight:400;
    }
    /*英数字フォント*/
	.-w-font_en{
        /* font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif,sans-serif; */
        font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif;
        
        font-weight:400;
    }
    .-w-font_en_after:after{
        font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif,sans-serif;
    }
















@media (max-width: 768px) {
    
    /*
     フォント
    ****************************************/
    
    
        /*見出しフォント*/
        .-w-font_title1,
	    h2, h3, h4, h5, h6{
            font-family:initial;
        }
        /*MVフォント*/
    	.-w-font_title2,
    	th,td,.-w-more_btn a{
            font-family:initial;
        }
        /*英数字フォント*/
    	.-w-font_en,
    	.-w-ttl_wrap span{
            font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif,sans-serif;
        }
        .-w-font_en_after:after{
            font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Helvetica", "Yu Gothic", "Meiryo", "Arial", sans-serif,sans-serif;
        }
    
    
    
    
    
    
    
    
    
    
    
    
    
}


[data-lib="4192"] #foot_fixed.popup_on {
    padding:2px 0!important;
}
[data-lib="780"] .-w-box span {
    font-size: 4.0rem!important;
    font-weight: bold!important;
    text-shadow:initial;
}
[data-lib="780"] .-w-box h2 {
    text-shadow:initial;
}

.-w-box span,.-w-box h2,.-w-h1-wrap h1{
    color: #000 !important;
    text-shadow: #fff 1px 0 10px!important;
}

.-w-head_main .-w-gnav ul li a{
    color: #000!important;
    text-shadow: #fff 1px 0 10px;
}
.-w-head_main.fixed .-w-gnav ul li a{
    color: #000!important;
    text-shadow: none!important;
}
.-w-top-main-txt02:before{
    display: none!important;
}

@media screen and (max-width: 768px) {
.swiper-pagination-white .swiper-pagination-bullet-active{
    border: 1px solid #313131;
    opacity: .2;
}
}/*layout:75*/.info.box{background:#fff;border:1px solid #707070;margin:50px 0;padding:20px}.info.box .title{font-size:18px;font-weight:700;margin-bottom:10px}.info.box .text{margin-bottom:20px}.info.box .contents{background:0 0;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:normal;align-items:center}.info.box .contents .image{box-sizing:border-box;background:#fff;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;width:45%;margin-right:5%;padding:20px}.info.box .contents .content{width:50%}.info.box .contents .content .tel{color:inherit;text-decoration:none;pointer-events:none}.info.box .contents .content a img{display:block;margin:0 auto}.info.box .contents .content .btn{background:#707070;border-radius:50px;color:#fff;text-align:center;text-decoration:none;display:block;max-width:200px;width:100%;margin:20px auto auto;padding:10px;transition:.3s}.info.box .contents .content .btn:hover{opacity:.6}.info.box .contents .content table tr th{width:60px}.info.box .contents .content table tr:nth-child(2) td span{display:block}.info.box .contents .content table+p{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:normal;animation:none}@media screen and (max-width:768px){.info.box .contents .content,.info.box .contents .image{width:100%;margin:0}.info.box .contents .content .tel{pointer-events:auto}.info.box .contents .image{margin-bottom:20px}}