/*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: 1170px;
    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:#f3f3f3;
    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:#f3f3f3;
}
.-w-txt.-w-background-r {
    color: #000;
    color:#313131;
}
.-w-txt.-w-main {
    color: #001754;
    color:#6FAD2E;
}
.-w-txt.-w-main-r {
    color: #fff;
    color:#ffffff;
}
.-w-txt.-w-accent {
    color: #4f0506;
    color:#274b8f;
}
.-w-txt.-w-accent-r {
    color: #fff;
    color:#ffffff;
}
/*背景色＋テキスト色*/
.-w-bg.-w-background {
    background: #fff;
    background:#f3f3f3;
    color: #000;
    color:#313131;
}
.-w-bg.-w-main {
    background: #001754;
    background:#6FAD2E;
    color: #fff;
    color:#ffffff;
}
.-w-bg.-w-accent {
    background: #4f0506;
    background:#274b8f;
    color: #fff;
    color:#ffffff;
}
/*反転ver*/
.-w-bg.-w-background-r {
    background: #000;
    background:#313131;
    color: #fff;
    color:#f3f3f3;
}
.-w-bg.-w-main-r {
    background: #fff;
    background:#ffffff;
    color: #001754;
    color:#6FAD2E;
}
.-w-bg.-w-accent-r {
    background: #fff;
    background:#ffffff;
    color: #4f0506;
    color:#274b8f;
}
/*hover時背景色指定*/
a.-w-bg.-w-background:hover {
    background: #000;
    background:#313131;
    color: #fff;
    color:#f3f3f3;
}
a.-w-bg.-w-main:hover {
    background: #fff;
    background:#ffffff;
    color: #001754;
    color:#f3f3f3;
}
a.-w-bg.-w-accent:hover {
    background: #fff;
    background:#ffffff;
    color: #4f0506;
    color:#274b8f;
}
a.-w-bg.-w-background-r:hover {
    background: #fff;
    background:#f3f3f3;
    color: #000;
    color:#313131;
}
a.-w-bg.-w-main-r:hover {
    background: #001754;
    background:#6FAD2E;
    color: #fff;
    color:#ffffff;
}
a.-w-bg.-w-accent-r:hover {
    background: #4f0506;
    background:#274b8f;
    color: #fff;
    color:#ffffff;
}

/***ボーダー色指定***/
.-w-bd.-w-background {
    border-color: #fff;
    border-color:#f3f3f3;
}
.-w-bd.-w-main {
    border-color: #001754;
    border-color:#6FAD2E;
}
.-w-bd.-w-accent {
    border-color: #4f0506;
    border-color:#274b8f;
}
.-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:#f3f3f3;
}
a.-w-bd.-w-bg.-w-main:hover,
a.-w-bd.-w-main-r:hover {
    border-color: #001754;
    border-color:#6FAD2E;
}
a.-w-bd.-w-bg.-w-accent:hover,
a.-w-bd.-w-accent-r:hover {
    border-color: #4f0506;
    border-color:#274b8f;
}


/*見出し設定*/
.-w-ttl_wrap {
    text-align: center;
}
.-w-section_inner h3.-w-general{
    text-align: center;
}
span.-w-general{
    font-size: 4.8rem;
    margin-bottom: 4rem;
    display: block;
    line-height: 1.0;
    color:#313131;
    color:rgba(49,49,49,1);
}
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(111,173,46,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;
	background-color:rgba(39,75,143,1);
	color:rgba(255,255,255,1);
	border-color:rgba(39,75,143,1);
}
.-w-more_btn a:hover{
    opacity: 1;
	background-color:#ffffff;
	color:#ff6600;
	color:rgba(39,75,143,1);
	background-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;
        
        
        
        
    }

	/*見出しフォント*/
	.-w-font_title1{
	    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
	}
	/*MVフォント*/
	.-w-font_title2{
	    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
	}
	/*英数字フォント*/
	.-w-font_en{
	    font-family: ivymode, a-otf-midashi-go-mb31-pr6n, sans-serif;
	}
    .-w-font_en_after:after{
	    font-family: ivymode, a-otf-midashi-go-mb31-pr6n, 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{
    	    font-family: ivymode, a-otf-midashi-go-mb31-pr6n, sans-serif;
    	}
        .-w-font_en_after:after{
    	    font-family: ivymode, a-otf-midashi-go-mb31-pr6n, sans-serif;
    	}
    
    
    
    
    
    
    
    
    
    
    
    
}