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

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

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

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

/* 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:#ffffff url(/images/bg.png) repeat;
    color: #313131;
    color:#313131;
    line-height: 1.6;
    font-size: 1.6rem;
    font-feature-settings: "palt";
    -webkit-text-size-adjust: 100%;
}
@media (max-width: 768px) {
    body {
        font-size:3vw;
    }
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/***色指定***/
.-w-txt.-w-background {
    color: #fff;
    color:#ffffff url(/images/bg.png) repeat;
}
.-w-txt.-w-background-r {
    color: #000;
    color:#313131;
}
.-w-txt.-w-main {
    color: #001754;
    color:#9d9d14;
}
.-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:#ffffff url(/images/bg.png) repeat;
    color: #000;
    color:#313131;
}
.-w-bg.-w-main {
    background: #001754;
    background:#9d9d14;
    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:#ffffff url(/images/bg.png) repeat;
}
.-w-bg.-w-main-r {
    background: #fff;
    background:#ffffff;
    color: #001754;
    color:#9d9d14;
}
.-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:#ffffff url(/images/bg.png) repeat;
}
a.-w-bg.-w-main:hover {
    background: #fff;
    background:#ffffff;
    color: #001754;
    color:#ffffff url(/images/bg.png) repeat;
}
a.-w-bg.-w-accent:hover {
    background: #fff;
    background:#ffffff;
    color: #4f0506;
    color:#212222;
}
a.-w-bg.-w-background-r:hover {
    background: #fff;
    background:#ffffff url(/images/bg.png) repeat;
    color: #000;
    color:#313131;
}
a.-w-bg.-w-main-r:hover {
    background: #001754;
    background:#9d9d14;
    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:#ffffff url(/images/bg.png) repeat;
}
.-w-bd.-w-main {
    border-color: #001754;
    border-color:#9d9d14;
}
.-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:#ffffff url(/images/bg.png) repeat;
}
a.-w-bd.-w-bg.-w-main:hover,
a.-w-bd.-w-main-r:hover {
    border-color: #001754;
    border-color:#9d9d14;
}
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,
.-w-ttl-en.-w-font_en {
    font-size: 4.8rem;
    margin-bottom:1.0rem;
    display: block;
    line-height: 1.0;
    color:#313131;
    color:rgba(49,49,49,1);
}
h2.-w-general{
    font-size: 2.4rem;
    margin-bottom: 3.0rem;
    letter-spacing: -2px;
    color:#313131;
    color:rgba(49,49,49,1);
}
h3.-w-general{
    font-size: 2.2rem;
    margin-bottom: 3.0rem;
    letter-spacing: -2px;
    color:#EA7C5D;
    color:rgba(157,157,20,1);
}
h4.-w-general {
    font-size: 2.0rem;
    color:#313131;
    color:rgba(49,49,49,1);
    margin-bottom: 1.5rem;
}
@media (max-width: 768px) {
    .-w-ttl_wrap {
        text-align: left;
    }
    .-w-section_inner h3.-w-general{
        text-align: left;
    }
    span.-w-general,
    .-w-ttl-en.-w-font_en {
        font-size: 7.0vw;
        text-align: left;
        margin-bottom:1.0rem;
    }
    h2.-w-general {
        margin-bottom: 1.5rem;
        font-size: 6.0vw;
        letter-spacing: initial;
        text-align: left;
        line-height:1.5;
    }
    h3.-w-general{
        font-size: 5.5vw;
        text-align: left;
        letter-spacing: initial;
        margin-bottom: 1.5rem;
        line-height:1.5;
    }
    h4.-w-general {
        font-size: 3.5vw;
        text-align: left;
        margin-bottom: 1.5rem;
    }
}
/*フェード*/
@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:3.0rem;
    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(33,34,34,1);
	color:rgba(255,255,255,1);
	border-color:rgba(33,34,34,1);
}
.-w-more_btn a.current,
.-w-more_btn a:hover{
    opacity: 1;
	background-color:#ffffff;
	color:#ff6600;
	color:rgba(33,34,34,1);
	background-color:rgba(255,255,255,1);
}
@media (max-width: 768px) {
    .-w-more_btn a{
    	padding: 15px 10px;
    	min-width: 100%;
    	font-size: 4vw;
    }
}

/*4022*/
.-w-more_btn a{
    display: inline-block;
	position: relative;
	text-decoration: none;
	border: 2px solid;
	-webkit-transition: all .3s;
	transition: all .3s;
	padding: 20px 5px;
    line-height: 1;
	text-align: center;
	min-width: 225px;
	background-color:#ffffff;
	color:#212222;
	border-color:#212222;
}
.-w-more_btn a.current,
.-w-more_btn a:hover{
	background-color:#212222;
	color:#ffffff;
	border-color:#212222;
}
.-w-more_btn a:before,
.-w-contact_btn a:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color:#212222;
    opacity: 0;
    -webkit-transition: all .5s cubic-bezier(.19,1,.22,1);
    transition: all .5s cubic-bezier(.19,1,.22,1);
    -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
    transition-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-transform: scale(.8);
    transform: scale(.8);
}
.-w-more_btn a:after,
.-w-contact_btn a:after {
    content: '→';
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -9px;
    font-size: 18px;
    line-height: 1;
    -webkit-transition: all .4s cubic-bezier(.165,.84,.44,1);
    transition: all .4s cubic-bezier(.165,.84,.44,1);
    -webkit-transition-timing-function: cubic-bezier(.165,.84,.44,1);
    transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
.-w-more_btn a:hover:before {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}
.-w-contact_btn a:hover:before {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
}
.-w-more_btn a span,
.-w-contact_btn a > span > span {
    position: relative;
    z-index: 2;
}
.-w-more_btn a span.material-icons::before {
    background-color:#212222!important;
    color:#ffffff!important;
}
.-w-more_btn a:hover span.material-icons::before {
    background-color:#ffffff!important;
    color:#212222!important;
}
#foot_fixed .-w-contact_btn a {
	background-color:#ffffff!important;
	color:#212222!important;
	border-color:#212222!important;
	padding: 20px 5px;
}
#foot_fixed .-w-contact_btn a:hover {
	background-color:#212222
!important;
	color:#ffffff!important;
	border-color:#212222!important;
}
#foot_fixed table td .-w-contact_btn a span.material-icons::before {
    background-color:#212222!important;
    color:#ffffff!important;
}
#foot_fixed table td .-w-contact_btn a:hover span.material-icons::before {
    background-color:#ffffff!important;
    color:#212222!important;
}
.-w-foot-main .-w-more_btn a:after,
.-w-contact_btn a:after {
    display: none;
}
@media (max-width: 768px) {
    .-w-more_btn a{
    	padding: 15px 10px;
    	min-width: 100%;
    	font-size: 4vw;
    }
    .-w-contact_btn a:after {
        right:2%;
    }
}
/*4022*/



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


    body {
    	font-family: source-han-sans-cjk-ja, sans-serif;
    	font-weight: 300;
    	font-style: normal;
        
        font-family:fot-tsukuardgothic-std;
        font-style:normal;
        font-weight:400;
    }
        
    /*見出しフォント*/
	.-w-font_title1{
        font-family:fot-tsukuardgothic-std, fot-tsukuardgothic-std,sans-serif;
        font-style:normal;
        font-weight:700;
    }
    /*MVフォント*/
	.-w-font_title2{
        font-family:fot-tsukuardgothic-std, fot-tsukuardgothic-std,sans-serif;
        font-style:normal;
        font-weight:400;
    }
    /*英数字フォント*/
	.-w-font_en{
        font-family:quasimoda, fot-tsukuardgothic-std, fot-tsukuardgothic-std,sans-serif;
        font-style:normal;
        font-weight:400;
    }
    .-w-font_en_after:after{
        font-family:quasimoda, fot-tsukuardgothic-std, fot-tsukuardgothic-std,sans-serif;
        font-style:normal;
        font-weight:400;
    }
















@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:quasimoda, fot-tsukuardgothic-std, fot-tsukuardgothic-std,sans-serif;
        }
        .-w-font_en_after:after{
            font-family:quasimoda, fot-tsukuardgothic-std, fot-tsukuardgothic-std,sans-serif;
        }
    
    
    
    
    
    
    
    
    
    
    
    
    
}/*widget:d3e3c8fd-36e1-4981-8ee7-b6e62a815052*/[data-lib="651"] *{box-sizing:border-box;}[data-lib="651"] .-w-wrapper{margin: 0 auto;}[data-lib="651"] .txt{margin-top: 20rem;}[data-lib="651"] .btn{text-align: center;
	margin-top: 3rem;}[data-lib="651"] .btn a{text-decoration: none;
	color: #333;
	border: solid 1px #333;
	padding: 1rem 4rem;
	background-color: #FEEA91;
	border-radius: 50px;}[data-lib="651"] .btn a:hover{opacity: 0.7;}/*layout:25*//* 4025ベース */

/*ヘッダーパーツ　パーツのuuidに変更*/
[data-lib-uuid="68316b85-72ee-4334-bd6c-9fe60eb9f9c5"] {
    background:url(/images/bg.png) repeat;
}

/*英語見出しアイコン*/
span.-w-general,
span.-w-en,
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en {
    position: relative;
    display: inline-block;
    padding: 0 60px 0;
}
span.-w-general:before,
span.-w-general:after,
span.-w-en:before,
span.-w-en:after,
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:before,
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:after{
    content: '';
    width: 49px;
    height: 54px;
    position: absolute;
    top: 50%;
    margin: 0 -20px;
}
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:before,
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:after{
    margin: 0;
}
@media (max-width: 768px) {
    span.-w-general:before,
    span.-w-general:after,
    span.-w-en:before,
    span.-w-en:after,
    [data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:before,
    [data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:after{
        margin: 0;
    }
}
span.-w-general:before,
span.-w-en:before,
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:before{
    left: 0;
    background: url(/images/icon_ttl_L.png) no-repeat 0 0;
}
span.-w-general:after,
span.-w-en:after,
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] span.-w-font_en:after{
    right: 0;
    background: url(/images/icon_ttl_R.png) no-repeat 0 0;
}
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] h2.-w-general .-w-font_en {
    display: inline-block;
}
[data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] h2.-w-general .-w-font_title2 {
    display: block;
}


/*アクセスの調整*/
@media (min-width: 769px) {
    [data-lib-uuid="040abc13-19ac-4da1-9251-9031641c7556"] .-w-ttl-wrapper {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center!important;
        -ms-flex-align: center!important;
        align-items: center!important;
        padding-bottom:1.0rem!important;
    }
}
@media (max-width: 768px) {
    [data-lib-uuid="040abc13-19ac-4da1-9251-9031641c7556"] .-w-ttl-wrapper .-w-en {

    }
    [data-lib-uuid="040abc13-19ac-4da1-9251-9031641c7556"] .-w-summary {
        width:100%;
    }
    [data-lib-uuid="ee9fd614-c208-44ba-9ce5-2b8d0a6cf8b0"] h2.-w-general .-w-font_title2{
        line-height:1.5
    }
    [data-lib-uuid="b3fade74-b018-4ba9-a23e-279b51d8051b"] .-w-box span {
        font-size: 10.0vw;
        word-break: break-word;
    }
    [data-lib-uuid="b3fade74-b018-4ba9-a23e-279b51d8051b"] .-w-box h2 {
        line-height: 1.2;
    }
    [data-lib-uuid="fa22f160-f6dc-4a4d-b302-daa037a086c4"] h2.-w-general .-w-font_title2 {
        font-size: 6.0vw;
        text-align: left;
        line-height: 1.5;
    }
    [data-lib-uuid="9ea8d087-d13e-4c77-951e-6b4ec872d51a"] .-w-blog_main h3.-w-general {
        font-size: 3.5vw;
    }
}
/* 4025ベースここまで */