@charset "utf-8";

html {
height: 100%;
overflow-y: scroll;
box-sizing: border-box;
-webkit-box-sizing: border-box;
}
*,
*:before,
*:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

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

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

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

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

    animation-name: fadeInBottom;
    animation-duration: 0; //アニメーション時間
    animation-timing-function: ease-out; //アニメーションさせるイージング
    animation-delay: 1s; //アニメーション開始させる時間
    animation-iteration-count: 1; //繰り返し回数
    animation-direction: normal; //往復処理をするかどうか
    animation-fill-mode: forwards; //アニメーション後のスタイルをどうするか
}
@keyframes fadeInBottom {
    0% {
        opacity: 0;
        transform: translate3d(0, 20px, 0);
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
.effect-fade {
    opacity : 0;
    transform : translate(0, 45px);
    transition : all 300ms;
}

.effect-fade.effect-scroll {
    opacity : 1;
    transform : translate(0, 0);
}

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

/* A elements that don't have a class get default styles */
/* classを持たない要素はデフォルトのスタイルを取得 */
a:not([class]) {
    text-decoration-skip-ink: auto;
}

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

/* Natural flow and rhythm in articles by default */
/* article要素内の要素に自然な流れとリズムを定義 */
article > * + * {
    margin-top: 1em;
}

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

/* Remove all animations and transitions for people that prefer not to see them */
/* 見たくない人用に、すべてのアニメーションとトランジションを削除 */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
.sp {
    display: block;
}
#outerWrapper{
    width: 100%;
    overflow: hidden;
}
@media print {
html,
html body {}
}
a:hover {
    opacity: .6;
    transition: .3s;
}

/* -------------------------------------------------------
 body
------------------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@300;400;500;600;700;800;900&family=Noto+Sans+JP:wght@100..900&family=Noto+Sans+SC:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Raleway:wght@100..900&display=swap');

html {
    font-family:"Barlow","Noto Sans JP","Noto Sans SC","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif;
    font-size: 62.5%;
}
body{

	width:100%;
	-webkit-text-size-adjust: 100%;
	line-height: 1.5;
	color: #000;
    font-size: 1.4rem;
}



/* -------------------------------------------------------
 fonts
------------------------------------------------------- */
a {
	color: #248b9a;
    text-decoration: none;
    font-family:"Barlow","Noto Sans JP","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif;
}
a:visited {}
a:hover,
a:active { text-decoration: none;}

.txtC{text-align:center !important;}
.txtR{text-align:right !important;}
.txtL{text-align:left !important;}
.bold{font-weight:bold !important;}
.normal{font-weight:normal !important;}
sup   { font-size: 78%; vertical-align: top;}
sub   { font-size: 78%; vertical-align: baseline;}

/* -------------------------------------------------------
inline align
------------------------------------------------------- */
.taL {text-align: left   !important;}
.taC {text-align: center !important;}
.taR {text-align: right  !important;}
.vaT {vertical-align: top    !important;}
.vaM {vertical-align: middle !important;}
.vaB {vertical-align: bottom !important;}

/* -------------------------------------------------------
float
------------------------------------------------------- */
.flL    { display: inline; float: left;}
.flR    { display: inline; float: right;}

/* -------------------------------------------------------
Tools
------------------------------------------------------- */
.clear {clear: both;}
.block {display: block;}
.hide  {display: none;}
.bgN   {background: none !important;}
.tdU   {text-decoration: underline;}
.tdN   {text-decoration: none;}

/* -------------------------------------------------------
img
------------------------------------------------------- */
img {
  max-width: 100%;
  height: auto;
  border: 0;
}
/* img hover */
a:hover img{
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
}


/* -------------------------------------------------------
header
------------------------------------------------------- */
.header {
	width: 100%;
  margin: auto;
    display: flex;
    justify-content: flex-start;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    height: 105px;
    position: fixed;
    top: -1px;
    z-index: 100;
    z-index: 19999;
}
.headerLogo {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: normal;
    font-size: 1.7rem;
    min-width: 350px;
    width: 25%;
    padding-top: 11px;
    padding-left: 3%;
    margin-right: 8%;
    margin-right: 0;
}
.headerLogo a {
    display: flex;
    /* color: #000; */
    color: #fff;
    align-items: center;
}
.headerLogo img {
    /*width: 105px;*/
    width: 120px;
    margin-right: 10px;
}
.header nav{
    min-width: 845px;
    min-width: auto;
    width: 50%;
    height: 73px;
    margin-right: 10%;
    margin-right: 0;
    overflow: hidden;
}

_::-webkit-full-page-media, _:future, :root .header nav {
    overflow: visible;
}

_::-webkit-full-page-media, _:future, :root .header .megaWrap.active.sp:before{
    top:79px;
}
_:-ms-lang(x)::-ms-backdrop, .header .megaWrap.active.sp:before {
    top:79px;
}



.header ul {
    display: flex;
}
.header ul.globalNav {
    padding-top: 5px;
    margin-left: auto;
    margin-right: auto;
    max-width: 950px;

    /*光洋の技術 非公開期間限定 CSSここから*/
    /*ここから削除*/
    max-width: 850px;
    /*光洋の技術 非公開期間限定 CSSここまで*/

}
.header ul.globalNav li {
    /*
    padding-right: 60px;
    padding-right: 59px;
    */
    position: relative;
    display: flex;
    justify-content: space-between;
}

.header ul.globalNav li .menuLink i{
    display: none;
}

/*.header ul.globalNav li:after*/
.header ul.globalNav a.topTitle:before{
    position: absolute;
    content: "／";
    right:20px;
    right: -11px;
    font-weight:bold;
    top: 18px;
}
.header ul.globalNav li:last-of-type {
padding-right: 0;}
.header ul.globalNav li:last-of-type:after {
    display: none;
}
.header ul.globalNav a {
    position: relative;
    z-index: 1000;
    font-weight: bold;
    text-decoration: none;
    color: #000000;
    display: block;
    font-size: 1.6rem;
    letter-spacing: .18em;
    padding: 17px 0 10px 1px;
    font-family: "Noto Sans JP","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif;
}

.header ul.globalNav a.menuLink {
    padding-left: 28px;
    padding-right: 28px;
}
.header ul.globalNav a.topTitle {
    padding-left: 28px;
    padding-right: 28px;
}
.header ul.globalNav a.menuLink:hover {
    padding-bottom: 120px;
    z-index: 19990;
    position: relative;
}
.header .megaWrap.sp {
    color: #fff;
    padding:0;
    position: fixed;
    width: 100vw;
    height: auto;
    background-color: #01305A;
    top: 104px;
    z-index:19999 ;
    left: 0;
    display: block;
    transition: 0s;
    opacity: 0;
    visibility: hidden;
}
.header ul.globalNav li.arwBtm:hover:before {
    content: "";
    width: 100%;
    height: 45px;
    display: block;
    position: absolute;
    bottom: auto;
    top:0;
}
.header ul.globalNav li.arwBtm:hover {
    padding-bottom: 140px;
}

.header .megaWrap.active.sp{
    transition-delay: 0s;
    opacity: 1;
    visibility: visible;
    box-sizing: border-box!important;
    max-width: 100%;
}
.header .megaWrap.active.sp:before {
    content: "";
    width: 100%;
    height: 25px;
    height: 65px;
    display: block;
    position: fixed;
    top: -21px;
    top: 50px;
    top: 65px;
    max-width: 1000px;
    margin: 0 auto;
    right: 0;
    left: 0;
    cursor: pointer;
    z-index: 19999;
}

@keyframes megaMenuOpen{
    0% {
        opacity: 0;
        visibility: hidden;
    }
    100% {
        opacity: 1;
        visibility: visible;
    }
}



.header ul.globalNav li.arwBtm:nth-of-type(2) .megaWrap.active.sp {
    transition-delay: 0s;
    opacity: 1;
    visibility: visible;
    height: 100%;
    overflow: auto;
    overflow: hidden;
    max-height: 719px;
    max-height: 716px;
}
.header ul.globalNav li.arwBtm:nth-of-type(2) .megaWrap .navLeftTitle + ul.sp,
.header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp,
.header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: calc( 100% - 257px );
    padding: 0 0 120px;
    overflow: hidden;
    margin-top: 60px;
}
.header ul.globalNav li.arwBtm:nth-of-type(n+3) .inner{
    left: -.5px;
    left: -7.5px;
    left: 0;
}

.header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start,
.header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
    justify-content: flex-start;
}

.header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
    width: 336px;
    width: 345px;
}

.header .megaWrap .inner {
    width: 95%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.header .arwBtm .megaWrap ul,
.header .megaWrap .sp {
    display: block;
}
.header .arwBtm .megaWrap ul a {
    color: #fff;
}
.header .arwBtm .megaWrap ul li:after {
    display: none;
}

.header .arwBtm .megaWrap .navLeftTitle + ul.sp {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: calc( 100% - 257px );
    padding: 60px 0;
    padding: 40px 0 60px;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp.dspBlck li {
    width: 100%;
}
.header .arwBtm .megaWrap ul{
    padding-left: 0;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp li {
    padding-right: 0;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp li a {
    font-size: 1.4rem;
    font-weight: normal;
    letter-spacing: .1rem;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp li.navMenuTitle a{
    font-size: 1.7rem;
    font-weight: bold;
    letter-spacing: .05rem;
}
.header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.dspBlck a{
    padding-bottom: 0;
}
.header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .inner {
    justify-content: flex-start;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp li.navMenuTitle.mt60 {
    margin-top: 38px;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp li.navMenuTitle a .pc {
    display: block;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul li:not(.navMenuTitle) {
    border-left: 1px solid #8CA0AF;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul li:not(.navMenuTitle) a {
    padding: 0 0 16px 10px;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul li:not(.navMenuTitle):last-of-type a {
    padding-bottom: 0;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul li.navMenuTitle a {
    padding: 0 0  20px 0;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul li.pb0 a{
    padding-bottom: 0;
}
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul li.pb0 + .navMenuTitle{
    margin-top: 30px;
}
/* .header .arwBtm .megaWrap .navLeftTitle + ul.sp ul .navMenuTitle br {
    display: none;
} */
.header .arwBtm .megaWrap .navLeftTitle + ul.sp ul .navMenuTitle br {
    display: block !important;
}
.header .arwBtm .megaWrap .navLeftTitle h3{
    font-size: 2.2rem;
    letter-spacing: .1rem;
}
.header .arwBtm .megaWrap .navLeftTitle .boxLink a.arrowLink{
    font-size: 1.4rem;
    border: 1px solid #fff;
    color: #fff;
    font-weight: normal;
    width: 180px;
    height: 46px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 1.7rem!important;
    padding: 1.5rem 1rem 1.3rem!important;
    line-height: 1;
    margin-top: 30px;
    background: none;
}
.header .arwBtm .megaWrap .navLeftTitle{
    background: #2766BF;
    width: 227px;
    height: auto;
    padding:55px 0 0 20px;
    margin-right: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
}
.header .arwBtm .megaWrap .arrowLink:after {
    top: 0px;
}

.header .arwBtm .megaWrap .sp.dspBlck li:not(.navMenuTitle) {
    border-left: 1px solid #8CA0AF;
    padding-left: 10px;
    padding-bottom: 16px;
}
.header .arwBtm .megaWrap .sp.dspBlck li:not(.navMenuTitle) a {
    padding: 0;
}
.header .arwBtm .megaWrap .sp.dspBlck li.pb0,
.header .arwBtm .megaWrap .sp.dspBlck li.pb0 a{
    padding-bottom: 0!important;
}
.header .arwBtm .megaWrap .sp.dspBlck li.pt0 a{
    padding-top: 0!important;
}
.header .arwBtm .megaWrap .sp.dspBlck li.pt0 {
margin-top: 15px;
}
.header nav .contactBtn,
.header nav .fuction {
    display: none!important;
}



.contactBtn.open .megaWrap{
    display: block;
    opacity: 1;
    visibility: visible;
}
.contactBtn.open .megaWrap .inner {
    max-width: 1215px;
}

.contactBtn.open .megaWrap .navLeftTitle {
    background: #2766BF;
    width: 227px;
    height: auto;
    padding: 55px 0 0 20px;
    margin-right: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
}
.contactBtn.open .megaWrap .navLeftTitle + ul.sp li.navMenuTitle a {
    font-size: 1.7rem;
    font-weight: bold;
    letter-spacing: .05rem;
    position: relative;
    width: 100%;
}
.contactBtn.open .megaWrap .navLeftTitle + ul.sp li.navMenuTitle a:hover {
    opacity: .6;
    transition: .2s;
    cursor: pointer;
}
.contactBtn.open .megaWrap .navLeftTitle + ul.sp li.navMenuTitle {
    width: 100%;
}
.contactBtn.open .megaWrap a {
    display: flex;
    color: #fff;
    text-decoration: none;
    height: 45px;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 0;
}
.contactBtn.open .megaWrap .navLeftTitle + ul.sp {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: calc( 100% - 257px );
    padding: 60px 0;
    padding: 40px 0 60px;
}
.contactBtn.open .megaWrap .navLeftTitle h3 {
    font-size: 2.2rem;
    letter-spacing: .1rem;
}
.contactBtn.open .megaWrap:before {
    content: "";
    width: 100%;
    height: 25px;
    height: 65px;
    display: block;
    position: fixed;
    top: -21px;
    top: 50px;
    top: 65px;
    max-width: 1000px;
    margin: 0 auto;
    right: 0;
    left: 0;
    cursor: pointer;
    z-index: 19999;
}

.contactBtn.open .megaWrap .inner {
    max-width: 200px;
}

.contactBtn.open .megaWrap .navLeftTitle + ul.sp li.navMenuTitle a {
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: .05rem;
    position: relative;
    width: 100%;
}

.contactBtn.open .megaWrap .navLeftTitle + ul.sp {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width:200px;
    padding: 60px 0;
    padding: 0px 18px 20px;
    background: #01305A;
}
.contactBtn.open .megaWrap .navLeftTitle {
    background: #2766BF;
    width: 227px;
    height: auto;
    padding: 55px 0 0 20px;
    margin-right: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    display: none;
}
.contactBtn.open .megaWrap {
    width: 210px;
    left: auto;
    right: 0;
}

.contactBtn.open .megaWrap a {
    display: flex;
    color: #fff;
    text-decoration: none;
    height: 50px;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 0;
}



.header .globalNav .current a.menuLink:after {
    content:"";
    height: 2px;
    width: 100%;
    display: block;
    background: #2766BF;
    position: relative;
    top: 10px;
    left: -3px;
    z-index: 1000;

}

.header .globalNav .current a.topTitle:after {
    content:"";
    height: 2px;
    width: 100%;
    display: block;
    background: #2766BF;
    position: relative;
    top: 10px;
    left: -3px;
    z-index: 1000;
}
.header .globalNav .headerTitle.current a::after {
    content: "";
    height: 2px;
    width: 100%;
    display: block;
    background: #2766BF;
    position: relative;
    top: 10px;
    left: -3px;
    z-index: 1000;
}

.header .fuction {
    padding: 20px 0 10px;
    width: 177px;
    /*
    right: 174px;
    position: absolute;
    */
    position: relative;
    width: 12.5%;
    max-width: 177px;
    top:0;
    left: 2vw;
}
.header .fuction:after {
    content: "";
    background: url(/files/img/top/icon_search_01.png);
    width: 12px;
    height: 13px;

    right:30px;
    bottom:18px;
    position: absolute;
    display: block;
    -webkit-background-size: cover;
    background-size: cover;
}
.header.ch .fuction {
    max-width: 250px;
}

_:-ms-lang(x), .header .fuction:after  {
    bottom: 17px!important;
}
_::-webkit-full-page-media, _:future, :root .header .fuction:after {
    right:28px;
    bottom:20px;
}

.header .fuction ul {
    padding-bottom: 0;
    margin-bottom: 0;
    margin-top: 0px;
    margin-bottom: 6px;
    margin-left: 20px;
    margin-left: 13px;
    transition: .2s;
}
.header .fuction li {
    font-size: 1.4rem;
    display: flex;
    justify-content: flex-end;
    padding-right: 20px;
    transition: .2s;
    font-family: "Barlow", sans-serif;
}
.header .fuction li:last-of-type {
    padding-right: 0;
}
.header .fuction li:after {
    content: "|";
    position: relative;
    right: -10px;
}
.header .fuction input {
    border:none;
    border-radius:20px;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: #F3F3F3;
    padding: 3.5px 16px;
    transition: .2s;
    max-width: 157px;
}
.header .fuction li:last-of-type:after {
    display: none;
}
.header .serach {
}
.header .contactBtn {
    background: #2766BF;
    /*position: absolute;*/
    right:0;
    top:0;
    max-width: 151px;
    width: 12.5%;
}
.header .contactBtn:hover {
    background: #01305A;
}
.header .contactBtn:hover a{
    opacity: 1;
}
.header .contactBtn a {
    display:flex;
    color: #fff;
    text-decoration: none;
    height: 105px;
    align-items: center;
    justify-content: center;
    /*padding: 0 30px;*/

}
.header .togglenav{
    display: none;
    transition: .2s;
}
.header .arwBtm ul,
.header .sp,
.header ul.globalNav li.sp{
    display: none;
}

.header .fuction ul .rCarrent p {
    color: #0066F1;
}

.header ul.globalNav li.noAfter:after {
    display: none;
}
.header ul.globalNav li.noAfter {
    padding-right: 0!important;

}
.header ul.globalNav li.noAfter a{
    padding-left: 28px;
}


.footerTitle a{
    display: flex;
    width: 100%;
    align-items: center;
}


/* -------------------------------------------------------
footer
------------------------------------------------------- */


.beforeFooter {
    margin-top: 150px;
    background: url(/files/img/common/top_footer_bg.png);
    background-size: cover;
    height: 384px;
    background-repeat: no-repeat;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: center;

}
.beforeFooter .flexBox{
    max-width: 1550px;
    width: 80%;
    margin: 0 auto;
    align-items: center;
    align-self: center;
}
.beforeFooter .flexBox li {
    max-width: 477px;
    width: 30%;
    background: #fff;
    height: 200px;

}
.beforeFooter .flexBox a {
    font-size: 1.9rem;
    color: #000;
    letter-spacing: .18rem;
    display: block;
    width: 100%;
    height: 100%;
    background-repeat:no-repeat!important;
    -webkit-background-size: contain!important;
    background-size: contain!important;
    background-position: right top!important;
    padding: 30px 0 0 20px;
    text-shadow: 0px 0px 1px #fff;
}
.beforeFooter .flexBox a span {
    font-size: 1.6rem;
    color: #2766BF;
    display: block;
    margin-top: 10px;
    letter-spacing: .1rem;
}

.beforeFooter .flexBox li:nth-of-type(1) a{
    background:url(/files/img/common/footer_link_01.png);
}
.beforeFooter .flexBox li:nth-of-type(2) a{
    /*background:url(/files/img/common/footer_link_02.png);*/
    background:url(/files/img/common/footer_link_02.jpg);
}
.beforeFooter .flexBox li:nth-of-type(3) a{
    background:url(/files/img/common/footer_link_03.png);
}

.footer {
    width: 100%;
    background: #01305A;
}
.footer .inner{
    width: 80%;
    max-width: 1550px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 76px 0 70px;
}
.footer .inner a {
    color: #fff;
}

.footerTitle {
    display: flex;
    align-items: center;
    color: #fff;
    font-size: 1.6rem;
    font-weight: normal;
    border-right: 1px solid #fff;
    padding-right: 45px;
    width: 336px;
    width: 206px;
}
.footerTitle img {
    margin-right: 10px;
    max-width: 107px;
}
.footer .flexBox {
    justify-content: flex-start
}
.footer dl {
    margin-top: 62px;
    width: 300px;
    width: 25%;
}
.footer dl dt  {
    font-size: 1.5rem;
}
.footer dl dd  {
    font-size: 1.35rem;
    font-weight: 400;
    padding-left: 13px;
    margin-top: 8px;
    line-height: 1.6;
}

.footer dl.lastList dd{
    font-size: 1.35rem;
    padding-left: 0;
}



#copyright {
    font-size: 86%;
    background: #fff;
    text-align: center;
    padding: 20px 0;
}
.footer dl:nth-of-type(1) {
    width: 26%;
}
.footer dl:nth-of-type(2) {
    width: 24%;
}


@media screen and (min-width:1200px){
    /*.header ul.globalNav li.arwBtm:nth-of-type(n+3) .inner {
        left: auto;
    }*/
}
@media screen and (max-width:1199px){
    .header ul.globalNav li.arwBtm:nth-of-type(n+3) .inner {
        left: 0;
    }
    .headerLogo.en {
        width: 30%;
    }
}





@media screen and (min-width:1920px){
    .header .fuction {
        left: 2vw;
    }

}
@media screen and (min-width:1980px){
    .header .fuction {
        left: 3vw;
    }
}
@media screen and (min-width:2400px){
    .header .fuction {
        left: 4vw;
    }
}
@media screen and (max-width:1786px){
    .headerLogo{
        /*光洋の技術 非公開期間限定 CSSここから*/
        /*
        max-width: 350px;


    /*光洋の技術 非公開期間限定 CSSここまで*/

    }

}

@media screen and (max-width:1640px){
    .header .fuction {
    left: 1vw;
    }
    .header .fuction ul {
        margin-left: -11px;
    }
    .header .fuction input,
    .header .fuction{
        width: 170px;
        max-width: 170px;
        margin-right: 15px;
    }
    .header .fuction:after {
        right: 9%;
        bottom: 19px;
    }
    _::-webkit-full-page-media, _:future, :root .header .fuction:after {
        right: 9%;
        bottom: 19px;
    }

    .headerLogo {

        /*光洋の技術 非公開期間限定 CSSここから*/
        /*コメントアウトを解除
        width: 330px;
        max-width:330px;
        /*光洋の技術 非公開期間限定 CSSここまで*/
        margin-right: 0;
        padding-left: 30px;
    }
    .header {
        justify-content: space-between;
    }
    .footer dl {
        margin-top: 62px;
        width: 25%!important;
    }
    .footer dl:nth-of-type(1) {
        width: 28%!important;
    }
    .footer dl:nth-of-type(2) {
        width: 22%!important;
    }
    _:-ms-lang(x), .header .fuction:after  {
        right: 10px!important;
    }

}

@media screen and (max-width:1540px){
    .header .contactBtn a {
        height:32px;
        position: absolute;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .header .fuction li:after {
        top: -2px;
    }
    .header .megaWrap.active.sp:before {
        top:80px;
    }
    .header .contactBtn {
        top: 0;
        right: 0;
        height: 40px;
        justify-content: center;
        align-items: center;
        position: absolute;
            z-index: 2;
        min-width: 126px;
        width: 126px;

    }
    .header .contactBtn a {
        width: 134px;
        height: 40px;

    }
    .header .contactBtn.open megaWrap a {
        width: 100%;
        position: relative;
    }
    .header .contactBtn.open .megaWrap .navLeftTitle + ul.sp {

        min-height: 330px;
    }
 .header .fuction {
        top:5px;
     left: auto;
        right: 136px;
        position: absolute;
     padding-top: 1px;
     display: flex;
    justify-content: flex-start;
     max-width: 264px;
     min-width: 264px;
     margin: 0!important;
     z-index: 2;
    }
    .header .fuction ul{
        /*
        left: -160px;
        position: absolute;*/
        top:7px;
        font-size: 80%;
        margin-bottom: 0;
        padding-top: 7px;
        padding-right: 12px;
    }
    .header .fuction ul p {
        font-size: 84%;
        cursor: pointer;
    }
    .header .fuction ul .rCarrent p{
        color: #0066F1;
    }
    .header .fuction:after {
        right: 5.5%;
        bottom: 46%;
    }
    _::-webkit-full-page-media, _:future, :root .header .fuction:after {
        right: 5.5%;
        bottom: 46%;
    }

    .header nav {
        margin-right: 16px;
        margin-left: auto;
        z-index: 1;
        position: relative;
        top: 8.5px;
    }
    .header ul.globalNav {
        top: 15px;
        position: relative;

        /*光洋の技術 非公開期間限定 CSSここから*/
        /*ここから削除*/
        justify-content: flex-end;
        padding-right: 20px;
        /*光洋の技術 非公開期間限定 CSSここまで*/

    }
    .header ul.globalNav a {
        padding-bottom: 12px;

    }
    _:-ms-lang(x), .header .fuction:after  {
        right: 25px!important;
    }
    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 336px;
        width: 25vw;
    }
    .footer .inner{
        width: 92%;
    }

    .header .megaWrap.active.sp:before {
        content: "";
        width: 100%;
        height: 65px;
        display: block;
        position: fixed;
        margin: 0;
        right: 0;
        left: auto;
        cursor: pointer;
        z-index: 19999;
    }

    .header .contactBtn .megaWrap.active.sp:before {
        content: "";
        width: 100%;
        height: 25px;
        height: 65px;
        display: block;
        position: fixed;
        max-width: 126px;
        margin: 0;
        right: 0;
        left: auto;
        cursor: pointer;
        z-index: 19999;
        background: #01305A;
        top: 39px!important;
    }





    /*光洋の技術 非公開期間限定 CSSここから*/
    /*ここから削除*/
    .header nav {
        min-width: 720px;
    }
    .header.en nav {
        min-width: 816px;
    }
    /*光洋の技術 非公開期間限定 CSSここまで*/

}
@media screen and (max-width:1320px){

    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 336px!important;
    }
    .header ul.globalNav .megaWrap li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1),
    .header ul.globalNav .megaWrap li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp li:nth-of-type(1),
    .header ul.globalNav .megaWrap li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 342px;
        width: 342px;
    }
}


@media screen and (max-width:1240px){
    .headerLogo {
        min-width: 300px;
    }
    /*光洋の技術 非公開期間限定 CSSここから*/
    /*ここから削除*/
    /* .headerLogo {
        min-width: 330px;
    } */
    /*光洋の技術 非公開期間限定 CSSここまで*/
    .header .fuction:after {
        right: 5.5%;
        bottom: 46%;
    }
    _::-webkit-full-page-media, _:future, :root .header .fuction:after {
        right: 5.5%;
        bottom: 46%;
    }


    .header nav {
        width: 665px;
            max-width: 665px;
        min-width: 665px;
    }
    .header ul.globalNav li {
        padding-right: 30px;
        padding-right: 29px;
    }
    .header ul.globalNav li:after {
        right: 10px;
        font-size: 1.2rem;
        top:20px;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(n+3) .inner {
        left: -.5px;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
        justify-content: flex-start;
    }
    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 342px;
        width: 24vw;
    }

    .header ul.globalNav a.topTitle {
        padding-left: 2px;
        padding-right: 2px;
    }
    .header ul.globalNav{
        justify-content: flex-end;
    }

    .header ul.globalNav a.topTitle:before {
        right: -22px;
    }
    .header ul.globalNav li{
        padding-right: 25px;
    }
    .header ul.globalNav li a{
        padding-left: 2px;
        padding-right: 2px;
    }
    .header ul.globalNav li.noAfter a {
        padding-left: 0;
        padding-right: 0;
    }

}




@media screen and (max-width:1280px){
    .header ul.globalNav li.arwBtm:nth-of-type(n+3) .inner {
        left: -0.5px;
    }
    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 342px;
        width: 342px;
    }
}

@media screen and (max-width:1240px){
    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 321px;
        width: 321px;
    }
    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li.w34p {
        max-width: 34%;
        width: 34%;
    }
}

@media screen and (min-width:1240px){
    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 336px;
        width: 336px;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1),
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp li:nth-of-type(1),
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start li:nth-of-type(1) {
        max-width: 342px;
        width: 342px;
    }

    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp,
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
        width: 854px;
        width: 831px;
        width: calc(100% - 257px);
        justify-content: flex-start;
    }


}
@media screen and (max-width: 1170px) and (max-width:1260px){
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start ,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp,
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
        width: 854px;
        width: 831px;
        width: calc(100% - 257px);
        justify-content: flex-start;
    }

}
@media screen and (max-width: 1250px)  {
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
        justify-content: flex-start;
    }
}

@media screen and (max-width: 1140px){
    .footer dl dd {
        font-size: 1.2rem;
    }
    .footer dl:nth-of-type(1) {
        width: 30%!important;
    }
    .footer dl:nth-of-type(2) {
        width: 20%!important;
    }
}

@media screen and (max-width: 1040px){
    .headerLogo {
        /*
        font-size: 1.3rem;
        width: 300px;
        */
        margin-left: -15px;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(2) .megaWrap .navLeftTitle + ul.sp  {
        width: calc(100% - 224px);
        justify-content: space-between;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
        width: calc(100% - 224px);
        justify-content: flex-start;
    }
    .header .arwBtm .megaWrap.active .navLeftTitle h3 {
        font-size: 1.8rem;
    }
    .header .arwBtm .megaWrap.active .navLeftTitle .boxLink a.arrowLink {
        font-size: 1.4rem;
        font-size: 1.2rem;
        border: 1px solid #fff;
        color: #fff;
        font-weight: normal;
        width: 160px;
        height: 45px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 1rem .8rem!important;
        line-height: 1;
        margin-top: 20px;
        background: none;
    }
    .header .arwBtm .megaWrap.active .navLeftTitle {
        width: 200px;
        margin-right: 20px;
    }
    .header .arwBtm .megaWrap.active .navLeftTitle + ul.sp {
        width: calc( 100% - 227px );
    }
    .header .arwBtm .megaWrap.active .navLeftTitle + ul.sp li.navMenuTitle a {
        font-size: 1.55rem;
    }




}


@media screen and (max-width:1024px){
    .header ul.globalNav li.arwBtm:nth-of-type(2) .megaWrap .navLeftTitle + ul.sp,
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.flex-start,
    .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp.flex-start {
        width: 100%;
    }
    #top .productList li ul {
        padding: 0 10px!important;
        width: 100%;
        position: relative;
        top: -15px;
    }
    #top .productList li .arrowLink {
        max-height: 75px;
    }

    .header ul.globalNav .megaWrap .navLeftTitle + ul.sp.flex-start li.w34p,
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp{
        width: 100%;
        min-width: 100%;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.dspBlck a {
        padding-bottom: 20px;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.dspBlck {
        margin-top: 1rem;
    }

    .header.toggleActive nav .contactBtn.open {
        background: none;
    }
    .header.toggleActive nav .contactBtn.open  .navMenuTitle{
        background: #2766BF;
    }
    .header.toggleActive nav .contactBtn:hover,
    .header.toggleActive nav .contactBtn .navMenuTitle:hover {
        opacity: 1;
        background: #2766BF;
    }
    .header.toggleActive nav .contactBtn.open .navMenuTitle:hover {
        opacity: 1;
        background: #2766BF;
    }
    .header.toggleActive nav .contactBtn.open:hover {
        background:#01305A;
    }
    .header.toggleActive nav .contactBtn.open .dspBlck a{
        font-size: 1.7rem;
        padding:0 13px;
        height: 5rem;
        text-align: center;
        justify-content: flex-start;
    }
    .header.toggleActive nav .contactBtn.open .dspBlck a:hover {
        opacity: .6;
        transition: .2s;
    }
    .header.toggleActive nav .contactBtn.open  .dspBlck {
        display: block;
        margin: 15px 0 15px 0px;
    }
    .header.toggleActive nav .contactBtn.open li {
        border-top: none;
    }
    .headerLogo.en {
        font-size: 1.2rem;
    }

}


@media screen and (max-width:1020px){
    .header {
        justify-content: flex-start;
    }
    .header nav,
    .header .fuction,
    .header .contactBtn{
        display: none;
    }
    .header nav {
        min-width: 100%;
        max-width: 100%;
    }
    .headerLogo {
        display: flex;
        font-size: 1.7rem;
        /* width: 80%; */
        padding-left: 30px;
        order: 1;
    }

    .header .togglenav{
        display: block;
        order: 2;
        -webkit-transition: -webkit-transform 0.2s;
        transition: .2s;
    }

    .header.toggleActive nav {
        display: block;
        visibility: visible;
        width: 100%;
        height: 100%;
        z-index: 15000;
        background: #01305A;
        top:80px;
        top:104px;
        padding:0;
        order: 3;
        overflow: scroll;
        padding-bottom: 15rem;
        /*
        animation-duration: .3s;
        animation-name: RightToLeft;
        */
        position: fixed;
        overflow: scroll;
        padding-bottom: 9rem;
    }
    .header nav, .header nav,

    @keyframes RightToLeft {
        0% {
            opacity: 0;
            transform: translateY(50%);
            visibility: hidden;
        }
        100% {
            opacity: 1;
            transform: translateY(0);
            visibility: visible;
        }
    }
    .header ul.globalNav li.arwBtm:hover {
        padding-bottom: 0;
    }
    .header.toggleActive nav .globalNav {
        display: block;
        border-top: 2px solid #01305A;
        border-bottom: 1px dotted #cdcdcd;
        width: 92%;
        top: 0;
        padding-top: 0;
    }
    .header.toggleActive ul.globalNav li:after {
        display: none;
    }
    .header.toggleActive nav a {
        color: #fff;
    }
    .header nav .contactBtn, .header nav .fuction {
        display: block!important;
    }

    .header.toggleActive nav li {
        width: 100%;
        border-top: 1px solid #cdcdcd;
        display: block;
        padding-right: 0;
        position: relative;
        cursor: pointer;
    }
    .header.toggleActive nav li:hover {
        opacity: .8;
        opacity: 1;
    }
    .header ul.globalNav li.arwBtm.open {
        opacity: 1!important;
    }
    .header.toggleActive nav li.arwBtm a {
        cursor: pointer;
        text-align: left;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    /*
    .header.toggleActive nav li.arwBtm a:after {
        content: "\f107";
        font-family: "Font Awasome 5 Free";
        font-weight: 900;
        display: inline-block;
    }
    */
    .header.toggleActive nav li.arwBtm ul {
        display: none!important;
    }
    .header.toggleActive nav li.arwBtm.open ul {
        height: auto!important;
        display: block!important;
        opacity: 1;
        animation: none;
        /*
        animation-duration: .3s;
        animation-name: toggleNavLinkOpen;
        */
    }
    @keyframes toggleNavLinkOpen{
        0% {
            opacity: 0;
            height: 0;
            visibility: hidden;
        }
        100% {
            opacity: 1!important;
            height: 100%;
            visibility: visible;
        }
    }


    .header.toggleActive nav li ul li {
        border-top: 1px dotted #cdcdcd;

    }
    .header.toggleActive nav li ul li:last-of-type {
        border-bottom: none;
    }
    .header.toggleActive nav li a {
        font-size: 2rem;
        font-size: 1.8rem;
        width: 100%;
            padding: 1.5rem 0;
        line-height: 1.8em;
        text-align: left;
        padding: 1.5rem .5rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .header.toggleActive nav li.noBdr a  {
        font-weight: normal;
        font-size: 1.6rem;
        padding-top: 0;
        padding-bottom: 0;
    }
    .header.toggleActive nav li.noBdr {
        border-top: none;
    }
    .header ul.globalNav li.noAfter {
        margin-bottom: 30px;
    }
    .header.toggleActive nav li a br {
        display: none;
    }
    .header.toggleActive nav li:first-of-type {
        border-top: none;
    }
    .header.toggleActive .globalNav .current a:after {
        display: none;
        left: auto;

}
    .header .megaWrap.active.sp {
        display: block;
        position: relative;
        width: 100%;
        height: auto;
        background-color: #01305A;
        top:0;
        height: 0;
        opacity: 0;
        transition: .2s;
    }
    .header .megaWrap.sp {
        position: relative;
        width: 100%;
        top:0;
        height: 0;
        transition: .2s;
        opacity: 0;
        visibility: hidden;
    }
    .header .open .megaWrap.sp {
            height: auto!important;
            opacity: 1!important;
            visibility: visible;
            position: relative;
            top:0;
            transition: 0s!important;
            width: 100%;
            overflow: hidden;
            animation: none;
        height: auto;
        z-index: 19999;
    }
    .header.toggleActive nav li.arwBtm.open ul {
        animation: none;
    }
    .header .megaWrap.active.sp:before,
    .header ul.globalNav li.arwBtm:hover:before {
        display: none;
    }
    .header .arwBtm .megaWrap .navLeftTitle {
        display: none;
    }

    .header.toggleActive nav li.arwBtm .megaWrap  ul {
        display: block!important;
    }
    .header .megaWrap .inner {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp {
        width: 100%;
        padding:0;
        padding-left: 18px;
    }
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp li {
        background: #013059;
        border-top: none;
    }
    .header .arwBtm .megaWrap ul.sp ul li:not(.navMenuTitle) {
        border-left: 1px solid #8CA0AF;
        border-top: none;
        border-bottom: none;
    }
    .header .arwBtm .megaWrap .sp.flex-start {
        padding-left: 18px!important;
    }
    .header .megaWrap .inner {
        width: 95%!important;
        width: 100%!important;
    }

    .header ul.globalNav li.arwBtm:nth-of-type(4) .megaWrap .navLeftTitle + ul.sp.dspBlck li.pb0{
        padding-bottom: 0!important;
        margin-bottom: 30px;
    }

    .header .arwBtm .megaWrap .navLeftTitle + ul.sp li.navMenuTitle a {
        font-size: 1.7rem;
    }
    .header.toggleActive nav li ul li:last-of-type {
        margin-bottom:40px;
        padding-bottom: 0!important;
    }
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp li.navMenuTitle.mt60 {
        margin-top: 10px;
    }
    .header .arwBtm .megaWrap li:not(.navMenuTitle):last-of-type a{
        padding-bottom: 0;
    }
    .fas {
    }
    .fas.fa-angle-down{
        color: #fff;
        font-size: 1.8rem;
    }

    .header ul.globalNav li .menuLink i {
        display: inline-block;
    }
    .header nav li.arwBtm .menuLink:after  {
        transform: rotate(0deg);
        top: 38%!important;
    }

    .header nav li.arwBtm ul {
        display: none;
    }
    .header nav li.arwBtm .menuLink{
        pointer-events: auto;
        cursor: pointer;
        position: relative;
        padding: 1.5rem .5rem;
    }
    .header nav li.arwBtm megaWrap a{
        pointer-events: auto;
    }
    .header ul.globalNav li.sp{
        display: block;
    }
    .header.toggleActive nav .globalNav {
        border-bottom: none!important;
        overflow: hidden;
    }
    .header.toggleActive nav .contactBtn,
    .header.toggleActive nav .fuction{
        display: block;
        display: block;
        position: relative;
        width: 100%;
        height: auto;
        right: auto;
        max-width: 92%;
        min-width: 92%;
        margin-left: auto!important;
        margin-right: auto!important;
    }
    .header.toggleActive nav .contactBtn {
        margin-top: 4.5rem;
    }
    .header.toggleActive nav .contactBtn a {
        width: 100%;
        height: 6.5rem;
        position: relative;
        font-size: 1.8rem;
        font-weight: bold;
    }

    .header.toggleActive nav  .fuction ul {
        margin: 3rem auto 0;
        top: 0;
        padding: 0;
        font-size: 1.6rem;
        width: 50%;
        justify-content: space-around;
        display: flex;
    }
    .header.toggleActive nav .fuction li {
        border-top: none;
        display: flex;
        justify-content: space-evenly;
    }
    .header.toggleActive nav  .fuction li:after {
        color: #fff;
        top: 1px;
        right: 0;
        content: "|";
        position: absolute;
        right: 0;
    }
    .header.toggleActive nav  .fuction ul p {
        color: #fff;
        text-align: center;
        font-size: 1.6rem;
    }
    .header.toggleActive nav  .fuction ul .rCarrent p {
        color: #4DB7FF;
    }
    .header.toggleActive nav  .fuction:after {
        right: 5%;
        bottom: 18%;
        width: 1.5rem;
        height: 1.5rem;
    }
    .header.toggleActive nav  .fuction input {
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        padding: 10px 16px;
        margin-top: 1.5rem;
    }
    .header.toggleActive nav  fuction li:after {

    }


    .header.toggleActive .arwBtm ul li{
        background: #E6ECF0;
    }

    .header.toggleActive .arwBtm ul li.navMenuTitle{
        background: none;
        border-bottom: none;
    }

    .header .open .megaWrap.sp ul{
        width: 100%;
    }
    .header.toggleActive .arwBtm ul li {
        background: none;
        border-top: none;
    }
    .header .arwBtm .megaWrap li:not(.navMenuTitle) a {
        padding: 0 0 16px 10px;
        font-size: 1.4rem;
        font-weight: normal;
    }
    .header .open .megaWrap.sp.bdrL li{
        border-left: 1px solid #8CA0AF;
        padding-left: 0px;
        margin-left: 18px;
    }

    .header ul.globalNav li.arwBtm:nth-of-type(2) .megaWrap .navLeftTitle + ul.sp {
        margin-top: 0!important;
        width: 100%!important;
        padding: 0!important;
        padding-left: 18px!important;
    }
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp li.mb0,
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp li.mb0 li:last-of-type {
        margin-bottom: 10px;
    }
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp {
        width: 100%;
        padding: 0;
        padding-left: 18px;
    }

    .header .arwBtm .megaWrap .sp.flex-start li.navMenuTitle.mb0{
        padding-bottom: 0px;
        margin-bottom: 0;
    }
    .header .arwBtm .megaWrap.sp.bdrL .sp.dspBlck {
        padding-left: 0;
    }
    .header .open .megaWrap.sp.bdrL li,
    .header .arwBtm .megaWrap.bdrL  ul li:not(.navMenuTitle) {
        border-top: none;
        border-bottom: none;
    }
    .header.toggleActive nav .bdrL li.arwBtm a {
        border-left: 1px solid #8CA0AF;
    }

    .header.toggleActive nav .bdrL li.arwBtm a {
        border-left: 1px solid #8CA0AF;
    }
    .header .arwBtm .megaWrap.sp.bdrL  .navLeftTitle + ul.sp li {
        padding-bottom:0;
        margin-top: 0;
    }
    .header ul.globalNav li.arwBtm:nth-of-type(3) .megaWrap .navLeftTitle + ul.sp, .header ul.globalNav li.arwBtm:nth-of-type(5) .megaWrap .navLeftTitle + ul.sp {
        display: flex;
        padding: 0;
        overflow: hidden;
        margin-top: 1rem;
        width: 100%;
    }

    .header .arwBtm .megaWrap.sp.bdrL .navMenuTitle{
        border-left: none;
        padding-left: 0;
        margin-left: 13px;
    }


    .header .arwBtm .megaWrap.sp.bdrL .navMenuTitle a {
        padding-top: 0;
        padding-bottom: 20px;

    }
    .header .arwBtm .megaWrap .sp.dspBlck li:not(.navMenuTitle) a{
        padding-bottom: 16px;
    }

    .togglebtn.active {
        -webkit-transform: rotate(360deg)!important;
        transform: rotate(360deg)!important;
    }
    .header.toggleActive .togglebtn span:nth-child(1) {
        -webkit-transform: translateY(10px) rotate(-45deg)!important;
        transform: translateY(10px) rotate(-45deg)!important;
    }
    .header.toggleActive .togglebtn span:nth-child(2) {
        -webkit-transform: translateY(0) rotate(45deg)!important;
        transform: translateY(0) rotate(45deg)!important;
    }
    .header.toggleActive .togglebtn span:nth-child(3) {
        opacity: 0;
    }

    .footer .flexBox {
        display: none;
    }

    .footerTitle {
        border-right: none!important;
        width: 100%!important;
        justify-content: center;
    }
    .footerTitle a{
        display: flex;
        width: 100%;
        align-items: center;
    }

    #copyright {
        padding: 1rem 0!important;
    }


    .header ul.globalNav {
        padding-right: 0;
    }
    .header ul.globalNav a.topTitle:before,
    .header ul.globalNav a.topTitle:after  {
        display: none!important;
    }
    .header ul.globalNav a.menuLink:hover {
        padding-bottom: 1.5rem;
        z-index: 19990;
        position: relative;
    }
    .header.toggleActive nav {
        margin-right: 0;
    }
    .header.toggleActive nav li.noBdr a{
        padding-left: 0;
        padding-bottom: 6px;
    }

    .header ul.globalNav a.menuLink.topTitle.activeBtn:hover {
        opacity: 1!important;
    }

}

@media screen and (max-width:959px){
.swiper-pagination {
    bottom:auto!important;
    top: calc(100vw / 3)!important;
    top: calc(100vw / 3.14)!important;
}
}

@media screen and (max-width:767px){
.header.toggleActive nav li:hover {
    opacity: 1;
}
    .header ul.globalNav a.menuLink:hover {
        opacity: 1;
    }
}


@media screen and (max-width:480px){
    .header {
        height: 66px;
    }
    .header.toggleActive nav li a br {
        display: block;
    }

    .headerLogo {
        display: flex;
        font-size: 1.3rem;
        /* width: 80%; */
        min-width: 290px;
        padding-left: 30px;
        order: 1;
        padding-top: 5px;
    }
    .headerLogo img {
        width: 7rem;
        margin-right: 5px;
    }
    .togglenav {
        top: auto!important;
    }
    .header.toggleActive nav {
        top: 65px;
    }
    .header.toggleActive nav li a {
        font-size: 1.8rem;
    }
    .header .arwBtm .megaWrap.active .navLeftTitle + ul.sp ul li.navMenuTitle a {
        padding: 0 0 14px 0;
    }
    .headerLogo.en {
        font-size: 1.1rem;
        width: 68%;
        padding-left: 40px;
    }
    .headerLogo.ch a {
        font-size: 1.5rem !important;
    }




    .swiper-pagination {
        bottom:auto!important;
        top: calc(100vw / 2.76)!important;
        top: calc(100vw / 2.92)!important;
    }
    .contentsWrap {
        padding-top: 66px!important;
    }
    .footerTitle img {
        margin-right: 0;
        display: block;
    }
    .footerTitle {
        text-align: center;
        margin-right: 0!important;
        padding-right: 0!important;
    }
    .footerTitle img {
        margin-right: 5px;
        display: block;
        margin: 0 auto;
        width: 20%;
        margin-left: 0;
    }
    .footer .inner {
        width: 90%;
        padding: 4rem 0!important;
    }
}

@media screen and (max-width:375px){

    .swiper-pagination {
        top: calc(100vw / 3.2)!important;
        top: calc(100vw / 2.92)!important;
    }
}
@media screen and (max-width:320px){

    .swiper-pagination {
        top: calc(100vw / 3)!important;
        top: calc(100vw / 2.85)!important;
    }
}


/* gNavi
------------------------------------------------------- */
#gNav > ul{
	width: 100%;
}
#gNav > ul > li{
}
@media screen and (max-width:767px){
		#gNav{
		}
}


/* SP
------------------------------------------------------- */

.togglenav {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 40px;
    right: 10px;
    z-index: 200;
    margin: auto;
    width: 40px;
    height: 22px;
    cursor: pointer;
}

.togglebtn {
display: inline-block!important;
    transition: all .4s!important;
    box-sizing: border-box!important;
    position: relative!important;
width: 100%;
height: 21px;
}
.togglebtn span {
    display: inline-block!important;
    transition: all .4s!important;
    box-sizing: border-box!important;
    position: absolute;
    left: 0;
    width: 80%;
    height: 1px;
    background-color: #00305a;;
}
.togglebtn span:nth-child(1) {
    top: 0px;
}
.togglebtn span:nth-child(2) {
    top: 10px;
}
.togglebtn span:nth-child(3) {
    bottom: 0px;
}

/* breadcrumb
------------------------------------------------------- */
#breadcrumbWrap {
	width: 100%;
	padding: 12px 0;
}
#breadcrumb {
	max-width: 980px;
	margin: 0 auto;
	overflow: hidden;
}
#breadcrumb li {
	float: left;
	white-space: nowrap;
	font-size: 86%;
	color: #333;
}
#breadcrumb li a {
	white-space: nowrap;
}
@media screen and (max-width:767px){
	#breadcrumbWrap {
		display: none;
	}
}


/* -------------------------------------------------------
contents
------------------------------------------------------- */
#contents {
	margin: 0 auto;
	max-width: px;
	text-align: left;
	position: relative;
}
.contentsWrap {
    padding-top: 104px;
}
@media screen and (max-width:767px){
	#contents {
	}
}


/* layout
---------------------------------------------------------- */
.inner{
	width:px;
	margin:auto;
	position:relative;
}


/* pageTop
---------------------------------------------------------- */
.pageTop {
	position:fixed;
	right:2.5%;
	bottom:5.5%;
    display: none;
    z-index: 3;
}

.pageTop img{
    transform: rotate(90deg);
    background-color: #000;
    border-radius: 100%;
    background: #01305A;
}

@media screen and (max-width:767px){
	.pageTop {
	}
}




/* -------------------------------------------------------
table
------------------------------------------------------- */

.type01 {
	width: 100%;
	border-collapse: separate;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.type01 th,
.type01 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 10px 15px;
}
.type01 th {
	background-color: #f3f3f3;
}
.type01 td {
}
@media screen and (max-width:767px){
.table_basic01 {
	width: 100%;
}
.table_basic01,
.table_basic01 thead,
.table_basic01 tbody,
.table_basic01 tr,
.table_basic01 th,
.table_basic01 td {
	width: 100%;
	display: block;
}
.table_basic01 th,
.table_basic01 td {
	border-top: none;
	border-left: none;
}
.table_basic01 th {
}
.table_basic01 td {
}
}

/* -------------------------------------------------------
form
------------------------------------------------------- */

.check_layout input{
    display:none;
}
.check_layout label{
    display:inline-block;
    position:relative;
    padding-left:25px;

}
.check_layout label:before,.check_layout label:after{
    content:'';
    display:block;
    position:absolute;
    top:0;
    left:0;
    width:15px;
    height:15px;
}
.check_layout label:before{
    background:#fafafa;
    border:1px solid #666666;
}
.check_layout input:checked + label:after{
	left:1px;
	top:-1px;
	content:"\f00c";
	color:#004ea2;
	height:15px;
	margin:auto;
	font-size:108%;
	font-family: FontAwesome;
}
.loadLogo{
     display: none;
}
/* -------------------------------------------------------
clearfix
------------------------------------------------------- */

.cf:after{
    content: ".";
    display: block;
    height: 0;
    font-size:0;
    clear: both;
	visibility:hidden;
}
.cf{
	display: inline-block;
}
/* Hides from IE Mac */
* html .cf{
	height: 1%;
}
.cf{
	display:block;
}

.flexBox {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* -------------------------------------------------------
margin
------------------------------------------------------- */
.mt00 { margin-top: 0   !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mr00 { margin-right: 0   !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr15 { margin-right:15px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0   !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.ml00 { margin-left: 0   !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}

/* -------------------------------------------------------
padding
------------------------------------------------------- */
.pt00 { padding-top: 0   !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pt60 { padding-top:60px !important;}
.pt65 { padding-top:65px !important;}
.pr00 { padding-right: 0   !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0   !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pb60 { padding-bottom:60px !important;}
.pb100 { padding-bottom:100px !important;}
.pb110 { padding-bottom:110px !important;}
.pb130 { padding-bottom:130px !important;}
.pl00 { padding-left: 0   !important;}
.pl03 { padding-left: 3px !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}

.pageHeader a {
    pointer-events: none!important;
}





/*2022社名変更用*/
.headerLogo img {
    width: 396px;
    max-width: 70vw;
    margin-right: 0;
}
.footerTitle {
    width: 336px;
}
  .headerLogo a .headerCompanyText{
    font-family: "Noto Serif", serif;
  }


@media screen and (min-width: 1025px) {
		.header ul.globalNav a {
    font-size: 1.5rem;
	}
    .header ul.globalNav li.noAfter a {
      padding-left: 10px;
    }
	}
@media screen and (min-width: 1200px) {

    .headerLogo img {
        width: 460px;
    }
}
@media screen and (min-width: 1540px) {
    .header ul.globalNav a.topTitle {
        padding-left: 20px;
        padding-right: 20px;
    }
		.header ul.globalNav a {
    font-size: 1.6rem;
	}
    .header ul.globalNav .en a {
        font-size: 1.35rem;
    }
    .header nav {
        width: 47%;
    }

    .headerLogo.en a {
        max-width: 282px !important;
        font-size: 1.4rem !important;
    }

    .header ul.globalNav {
        /* max-width: 650px; */
        max-width: 840px;
        padding-top: 10px;
    }

    .header ul.globalNav.en {
        max-width: 1000px;
    }


    .headerLogo {
        width: 30%;
    }
    .headerLogo img {
        width: 460px;
    }
    .header ul.globalNav a.topTitle {
        padding-left: 18px;
        padding-right: 18px;
    }
  .header ul.globalNav {
      padding-right: 0;
  }
	.header ul.globalNav a.topTitle {
		padding-left: 13px;
    padding-right: 13px;
	}
  .header ul.globalNav li.arwBtm:nth-of-type(2) .megaWrap.active.sp {
    max-height: 796px;
  }
}
    @media screen and (min-width: 1540px){
      .header ul.globalNav a.topTitle {
          padding-left: 12px;
          padding-right: 12px;
      }.header nav {
          min-width: 770px;
      }
      .header.en nav {
        min-width: 862px;
        padding-top: 22px;
      }
    }
    @media screen and (max-width: 1240px) {
        .header ul.globalNav a.topTitle {
            padding-left: 1px;
            padding-right: 1px;
        }
        .header.en nav {
            min-width: 650px;
        }
    }
    @media screen and (min-width: 1021px) {
        .header ul.globalNav a {
            font-size: 1.3rem;
        }
    }
    @media screen and (min-width: 1240px) {
        .header ul.globalNav a {
            font-size: 1.5rem;
        }
        .header ul.globalNav.en a {
            font-size: 1.3rem;
        }
    }
    @media screen and (min-width: 1680px) {
        .header ul.globalNav a {
            font-size: 1.6rem;
        }
    }

  .header{background: #000;}
  @media screen and (min-width: 1540px) {
    .header {
      height: 70px;
    }
    .header ul.globalNav .en a.topTitle {
        padding-left: 17px !important;
        padding-right: 10px !important;
    }
  }
  @media (min-width: 1240px) and (max-width: 1539px) {
    .header ul.globalNav .en a.topTitle {
        padding-left: 10px !important;
        padding-right: 12px !important;
    }
  }
  .header ul.globalNav a,
  .header .fuction a,
  .header .fuction li:after,
  .headerCompanyText{
    color: #fff!important;
  }
  .header .globalNav .current a.topTitle:after {
    background: #fff;
  }
  .header .contactBtn{
    background:#0101DA;
    z-index: 20000;
  }

  .headerLogo img {
    max-width: 88px;
  }
  .headerCompanyText{
    width: 100%;
    display: block;
    font-weight: 600;
    text-align: center;
  }
  @media screen and (min-width: 1540px) {
    .headerLogo {
      padding-top: 0;
      min-width: 1px;
    }
  }
  .headerLogo a {
    flex-wrap: wrap;
    justify-content: center;
  }


  @media screen and (min-width: 1025px) {
    .contentsWrap {
    padding-top:68px;
    }
    .headerLogo {
      padding-top: 0;
      min-width: 1px;
      font-size: 15px;
      padding-left: 0;
      margin-left: 30px;
      letter-spacing: -.01em;
      position: relative;
      z-index: 20000;
    }
    .headerLogo:after {
      content: "";
      display: block;
      width: 123%;
      height: 14px;
      display: block;
      background: url(/files/img/semiconductor-wafers/logo_bottom_bg.svg);
      background-size: contain;
      background-repeat: no-repeat;
      position: absolute;
      bottom: -22px;
      /* bottom: -18px; */
      left: 0;
      z-index: 1;
      left: -30px;
    }
    .header:has(.arwBtm.open) .headerLogo:after {
      display: none
    }
    .headerLogo a{
      max-width: 252px;
      position: relative;
      z-index: 10;
    }
    .headerLogo.en a{
      max-width: 300px;
    }
    .header nav {
      height: auto;
      padding-top: 5px;
    }
    .header ul.globalNav {
      padding-top: 0;
    }
    .header ul.globalNav a.topTitle,
    .header ul.globalNav li.noAfter a {
      padding-top: 0;
      padding-bottom: 0;
    }
    .header ul.globalNav a.topTitle:before {
      top: 0;
    }
    .header .fuction {
      padding-top: 0;
      padding-bottom: 0;
    }
    .header .fuction ul {
      margin-bottom: 0;
    }
    .header .megaWrap.sp {
      top: 45px;
      background-color: #000;
    }
    .header .arwBtm {
      height: 24px;
    }
    .header .arwBtm.en {
      height: 46px;
    }
    .header .arwBtm .megaWrap .navLeftTitle {
      background: #0001da;
    }
    .header ul.globalNav li.arwBtm:hover:before {
      height: 135px;
    }
    .header .globalNav .arwBtm > a:hover:after,
    .header .globalNav .arwBtm:hover:after {
        content: "";
        height: 300%;
        width: 100%;
        display: block;
        top: 0;
        position: absolute;
        display: block;
        left: 0;
        right: 0;
        background: rgba(0,0,0,0) !important;
    }
    .header .megaWrap.sp {
      padding-top: 40px;
    }
    .contactBtn.open .megaWrap .navLeftTitle + ul.sp {
      background: #000;
    }
    .contactBtn.open .megaWrap.sp.bdrL{
      padding-top: 0;
      top: 68px;
    }
    .header ul.globalNav a.topTitle {
        padding-left: 20px;
        padding-right: 20px;
    }
        .header ul.globalNav a.topTitle {
        padding-left: 10px;
        padding-right: 10px;
    }
        .header ul.globalNav .en a.topTitle {
        padding-left: 4px;
        padding-right: 3px;
    }
  }


  @media screen and (min-width: 1540px) {
    .headerLogo img {
        width: 88px;
    }
    .header .contactBtn a {
      height:70px;
    }
    .headerLogo a{
      max-width: 252px;
      /* max-width: 300px; */
      position: relative;
      top: 20px;
      top: 8px;
      z-index: 10;
    }
}
@media screen and (max-width: 1540px) {
    .header ul.globalNav {
        top: 0;
        padding-right: 0;
    }

  }

  @media screen and (min-width: 1540px) {
    .headerLogo {
        width: 20%;
    }
}
@media (min-width: 1025px) and (max-width: 1540px) {
    .header nav{
        top: 18px;
    }
    .header.en nav {
        top: 22px;
    }
  }
  @media screen and (max-width: 1240px) {
    .header ul.globalNav li {
        padding-right: 20px;
    }
}

.header ul.globalNav a.menuLink:hover,
.header ul.globalNav li.arwBtm:hover {
    padding-bottom: 0!important;
}
.togglebtn span {
    background-color: #fff;
}
@media screen and (max-width: 1020px) {
    .header.toggleActive nav {
        background: #000;
    }
    .header.toggleActive nav .globalNav {
      border-color:#fff;
    }
    .header .arwBtm .megaWrap .navLeftTitle + ul.sp li {
    background: #000;
    }
  }
  .header .megaWrap.sp {
        background: #000;
  }

#outerWrapper {
  background: #000;
}


.mv_header {
  position: relative;
  font-size: 18px;
}
.mv_header video {
  width: 100%;
}
.mv_header .arrow {
  position: absolute;
  left: 4%;
  bottom: 0;
  color:#B1EDFF;
  width: fit-content;
  transform: rotate(90deg);
  transform-origin: 65% -130%;
  transform-origin: 40% -140%;
  line-height: 1;
  animation: arrowmove 2s ease-in-out infinite;
}
@media screen and (max-width: 768px) {
  .mv_header .arrow {
    transform: rotate(90deg) scale(50%);
    transform-origin: 5% -165%;
  }
}

@media screen and (min-width: 1025px) {
    .mv_header .arrow {
    font-size: 200%;
    font-weight: 900;
  }

  .arrowImg img{
    min-width:250px;
  }
}

@keyframes arrowmove{
   0%{bottom:1%;}
   50%{bottom:2%;}
   100%{bottom:1%;}
}

.pageHeaderBlock {
  margin-top: 0;
  padding-top: 120px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .pageHeaderBlock {
    padding-top: 80px;
  }
}

.pageHeaderBlock:before {
  content: "";
  width: 100%;
  height: 260%;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #000;
  background: url(/files/img/semiconductor-wafers/bg01.png);
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 0;
  background-position: center top;
}


.pageHeaderBlockTitle {
  color: #fff;
  font-weight: bold;
  font-size: 46px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .pageHeaderBlockTitle {
    font-size: min(8vw,46px);
  }
}

.pageHeaderBlockRead {
  color: #fff;
  text-align: center;
  font-size: 20px;
  margin-top: 20px;
  letter-spacing: .05em;
  line-height: 2.0;
}
@media screen and (max-width: 768px) {
  .pageHeaderBlockRead {
    text-align: left;
    font-size: min(4.5vw,18px);
  }
}


.ancLinkList {
  margin-top: 72px!important;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .ancLinkList {
    margin-top: 30px!important;
  }
}

.ancLinkList li {
  width: 25%;
  background:rgba(0,0,240,.9);
}
@media screen and (max-width: 768px) {
  .ancLinkList li {
    width: 50%;
  }
}

.ancLinkList a{
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 18px;
    height: 60px;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
  .ancLinkList a{
    font-size: 4.5vw;
    font-size: min(4.5vw,18px);
  }
}

.ancLinkList li + li a {
  border-left: 1px solid rgba(255,255,255,.1);
}
@media screen and (max-width: 768px) {
  .ancLinkList li + li a {
    border: none;
  }
  .ancLinkList li:nth-of-type(1),
  .ancLinkList li:nth-of-type(2) {
    border-bottom: 1px solid rgba(255,255,255,.1);
  }
  .ancLinkList li:nth-of-type(2),
  .ancLinkList li:nth-of-type(4) {
    border-left: 1px solid rgba(255,255,255,.1);
  }
}


.ancBlockTitle {
  color: #fff;
  text-align: center;
}

.pageHeaderBlock ~ section {
  margin-top: 120px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .pageHeaderBlock ~ section {
    margin-top: 80px;
  }
}

.ancBlockTitleLine01 {
  font-family: "Raleway", sans-serif;
  color: #F3FF70;
  font-weight: bold;
  letter-spacing: .05em;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .ancBlockTitleLine01 {
    font-size: 4vw;
    font-size: min(4vw,16px);
  }
}

.ancBlockTitleLine02 {
  font-size: 40px;
  letter-spacing: .05em;
}
@media screen and (max-width: 768px) {
  .ancBlockTitleLine02 {
    font-size: 8vw;
    font-size: min(8vw,40px);
  }
}

.ancBlockTitleLine02Inner {
  border-bottom: 1px solid #fff;
  padding-bottom: 13px;
}
.ancBlockRead {
  color: #fff;
  margin-top: 52px;
  font-size: 18px;
  line-height: 2.0;
}
@media screen and (max-width: 768px) {
  .ancBlockRead {
    font-size: 4.25vw;
    margin-top: 30px;
    font-size: min(4.25vw,18px);
  }
}


.ancBlockReadLine + .ancBlockReadLine {
  padding-top: 18px;
}
.ancBlockBigImage {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
.ancBlockBigImage {
    margin-top: 30px;
  }
}

.ancBlockBigImage img {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
#anc02:before {
  content: "";
  width: 100%;
  height: 160%;
  display: block;
  position: absolute;
  top: 0;
  top: -30%;
  bottom: 0;
  left: 0;
  right: 0;
  background: #000;
  background: url(/files/img/semiconductor-wafers/bg02.png);
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 0;
  background-position: center top;
}
  @media screen and (min-width: 1540px) {
    #anc02:before {
      top: -15vw;
    }
}

.ancBlockRead2 {
  margin: 50px auto 70px;
  max-width: 857px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #fff;
  color: #000;
  line-height: 1.9;
  font-size: 20px;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .ancBlockRead2 {
    font-size: 4.25vw;
    font-size: min(4.25vw,20px);
  }
}


.ancBlockRead2 img{
  width: 44%;
}
@media screen and (max-width: 768px) {
  .ancBlockRead2 img{
    width: 100%;
  }
}

.ancBlockRead2 p{
  width: 56%;
  padding: 28px 30px;
  font-weight: 500;
  text-align: left;
}
@media screen and (max-width: 768px) {
.ancBlockRead2 p{
    width: 100%;
    padding: 15px 20px;
  }
}

.ancBlockTitle2 {
  color: #fff;
  font-weight: bold;
  font-size: 24px;
  letter-spacing: .05em;
  border-bottom: 1px solid #fff;
  padding-bottom: 18px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .ancBlockTitle2 {
    font-size: 5.25vw;
    font-size: min(5.25vw,24px);
  }
}

.ancBlockTitle2:before {
  content: "";
  width: 20px;
  height: 20px;
  margin-right: 8px;
  display: inline-block;
  background: url(/files/img/semiconductor-wafers/icon01.svg);
  background-repeat: no-repeat;
}
.ancBlockItemList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.ancBlockItemListItem {
  margin-top: 36px;
  width: calc((100% - 60px) / 3);
  background: #f2f2f3;
  font-size: 22px;
  position: relative;
}
@media screen and (max-width: 768px) {
.ancBlockItemListItem {
    width: 100%;
    font-size: 4.5vw;
    font-size: min(4.5vw,22px);
    margin-top: 15px;
  }
}
.ancBlockItemListItem.void {
  z-index: 0;
}
.ancBlockItemListItem:not(.void) {
  z-index: 1;
}


.ancBlockItemListItem a {
  display: block;
  width: 100%;
  height: 100%;
  color: #000;
  z-index: 20000;
}

.ancBlockItemListItem.void {
  background: none!important;
  margin: 0;
  height: 0;
}
.ancBlockItemListItemName {
  padding: 30px 20px 0;
  font-weight: bold;
  display: block;
  text-align: left;
}
.ancBlockItemListItemName:before {
  content: "";
  width: 14px;
  height: 14px;
  display: inline-block;
  background: #0000F0;
  border-radius: 50%;
  position: relative;
  top: -1px;
  margin-right: 5px;
}
.ancBlockItemListItemText {
  padding: 20px;
  font-size: 18px;
  line-height: 1.7;
  font-weight: 500;
  display: block;
  text-align: left;
}
@media screen and (max-width: 768px) {
.ancBlockItemListItemText {
    padding-top: 10px;
    font-size: 4.25vw;
    font-size: min(4.25vw,18px);
  }
}

#anc03:before {
  content: "";
  width: 100%;
  height: 100%;
  height: 160%;
  display: block;
  position: absolute;
  top: -15%;
  bottom: 0;
  left: 0;
  right: 0;
  background: #000;
  background: url(/files/img/semiconductor-wafers/bg03.png);
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 0;
  background-position: center top;
}
  @media screen and (min-width: 1540px) {
    #anc03:before {
      top: -13vw;
    }
}

.ancBlockCatch {
  font-size: 20px;
  line-height: 2.0;
  text-align: center;
  color: #fff;
  margin-top: 40px;
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
.ancBlockCatch {
    margin-top: 20px;
    font-size: 4.5vw;
    font-size: min(4.5vw,20px);
    text-align: left;
  }
}

.ancBlockFaqList {
  padding-top: 5px;
}

.ancBlockFaqListItem {
  padding-top: 30px;
}
.ancBlockFaqListItem > * {
  padding: 20px 15px 20px 20px;
  display: flex;
  gap: 15px;
}

.ancBlockFaqListItemQ {
  color: #fff;
  background: #F55A00;
  font-weight: 500;
  font-size: 20px;
  align-items: center;
  position: relative;
  padding-right: 50px;
  cursor: pointer;
  transition: .4s;
}
@media screen and (max-width: 768px) {
.ancBlockFaqListItemQ {
    font-size: 4.5vw;
    font-size: min(4.5vw,20px);
    padding-right: 30px;
  }
}

.ancBlockFaqListItemQ:hover {
  opacity: .8;
}
.ancBlockFaqListItemQ:before {
  content: "Q";
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
}
.ancBlockFaqListItemQ:after {
  content: "";
  width: 26px;
  height: 26px;
  position: absolute;
  display: block;
  background: url(/files/img/semiconductor-wafers/icon_acd_close.svg);
  background-size: cover;
  background-repeat: no-repeat;
  right: 20px;
}
.open.ancBlockFaqListItemQ:after {
  content: "";
  width: 26px;
  height: 26px;
  position: absolute;
  display: block;
  transition: .4s;
  background: url(/files/img/semiconductor-wafers/icon_acd_open.svg);
  background-size: cover;
  background-repeat: no-repeat;
  right: 20px;
}
@media screen and (max-width: 768px) {
.ancBlockFaqListItemQ:after {
    width: 20px!important;
    height: 20px!important;
    right: 15px!important;
  }
}

.ancBlockFaqListItemA {
  background: #fff;
  font-weight: 500;
  font-size: 18px;
  display: none;
  padding-left: 45px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
.ancBlockFaqListItemA {
    font-size: 4vw;
    font-size: min(4vw,18px);
  }
}


.ancBlockFaqListItemA:before {
  content: "A";
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  color: #0066F1;
  left: 20px;
  position: absolute;
  opacity: 0;
}

.ancBlockFaqListItemQ.open + .ancBlockFaqListItemA:before {
  opacity: 1;
  transition-delay: 1s;
  transition: .1s;
}

.ancBlockFaqList + .ancBlockTitle2{
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .ancBlockFaqList + .ancBlockTitle2{
    margin-top: 60px;
  }
}






footer {
  margin-top: 120px;
  background: #2b2b2b;
  margin-bottom: 80px;
  padding: 25px 0;
}
@media screen and (max-width: 768px) {
  footer {
    margin-top: 60px;
  }
}


footer > div {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1080px;
  color: #fff;
}
.footerInner1 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footerInner1 > * {
  width: 48.5%;
}
@media screen and (max-width: 768px) {
.footerInner1 > * {
  width: 100%;
  }
}

.footerInner1LeftLine01 {
  font-weight: bold;
  font-size: 26px;
}
@media screen and (max-width: 768px) {
  .footerInner1LeftLine01 {
  font-size: 5vw;
  }
}

.footerInner1LeftLine02 {
  line-height: 1.8;
  font-size: 20px;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
.footerInner1LeftLine02 {
  font-size: 3.75vw;
    font-size: min(3.75vw,20px);
  }
}

@media screen and (max-width: 768px) {
.footerInner1right {
  margin-top: 30px;
  }
}
.footerInner1right a{
  display: block;
  width: 100%;
  max-width: 500px;
}
.footerInner1right a + a {
  margin-top: 20px;
}

.footerInner2Line01 {
  margin-top: 150px;
}
@media screen and (max-width: 768px) {
.footerInner2Line01 {
  margin-top: 60px;
  }
}

.footerInner2Line01 a {
  color: #fff!important;
  text-decoration: underline;
}
.footerInner2Line02 {
  margin-top: 25px;
  position: relative;
    left: -8px;
}

footer a {
  transition: .4s!important;
  display: block;
}
footer .footerInner2Line01 a:hover {
  opacity: .6;
}

footer a:hover img{
  opacity: .8;
}




@media screen and (max-width: 768px) {
  .headerLogo a {
    justify-content: flex-start!important;
  }
  .headerCompanyText {
    text-align: left;
  }
}

@media screen and (min-width: 1240px) {
    .headerLogo img {
        width: 110px;
        max-width: 110px;
    }
}


#pageloading-wrap {
  background: #000;
  z-index: 20001!important;
}
.ball-beat>div, .ball-scale-multiple>div, .ball-pulse-sync>div, .ball-pulse>div, .ball-scale-random>div, .ball-scale>div {
  background: #fff;
}


.ancBlockFaqListItemAImg {
  display: block;
  padding-right: 30px;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .ancBlockFaqListItemAImg {
    padding-right: 10px;
    padding-bottom: 10px;
  }
}
.ancBlockFaqListItemAImg img{
  width: auto;
  height:auto;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.ball-beat>div, .ball-scale-multiple>div, .ball-pulse-sync>div, .ball-pulse>div, .ball-scale-random>div, .ball-scale>div {
    background: #fff!important;
}

@media screen and (max-width: 767px) {
    .pageTop {
        width: 40px;
    }
}
#pageloading-wrap-title {
  color: #000;
  font-size: min(8vw, 6.4rem);
  font-family: "Barlow", sans-serif;
  font-weight: 600;
}
.is-loaded #pageloading-wrap-title{
  color: #fff !important;
  animation:loadingtext 5s ease forwards normal 0s;
}



.is-loaded .pageloading-icon {
    opacity: 0;
    display: none!important;
}

  @keyframes loadingtext {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 1;
        transform: scale(1.0);
    }
    100% {
        transform: scale(2.0);
    }
}


#pageloading-wrap {
    background: #000!important;
    z-index: 20001 !important;
}


  .header ul.globalNav a,
  .header .fuction a,
  .header .fuction li:after,
  .headerCompanyText{
    color: #fff;
  }
  .header .globalNav .current a.topTitle:after {
    background: #fff;
  }
  .header .contactBtn{
    background:#0101DA;
    z-index: 20000;
  }

  .headerLogo img {
    max-width: 88px;
  }
  .headerCompanyText{
    width: 100%;
    display: block;
    font-weight: 600;
    text-align: center;
  }
  @media screen and (min-width: 1540px) {
    .headerLogo {
      padding-top: 0;
      min-width: 1px;
    }
  }
  .headerLogo a {
    flex-wrap: wrap;
    justify-content: center;
  }
