@charset "utf-8";
/****************************************
               Reset CSS
*****************************************/
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
body {
    line-height:1;
    font-family: "M PLUS Rounded 1c","メイリオ","MS Pゴシック",sans-serif;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section
{    display:block;
}

nav ul li{
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    transition: all 0.3s;
}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted #000;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

/****************************************
                Common
*****************************************/
*{
    font-display: swap;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
}
*::-webkit-scrollbar{
    display:none;
}

div{-webkit-tap-highlight-color: rgba(0,0,0,0);}

a {
    color:#276194;
    -webkit-tap-highlight-color: rgba(0,0,0,0); /* タップ時の背景色 */
    text-decoration:none!important;
    transition: all 0.3s;
    outline:none;
}
a:hover{
    color:#FF0000;
}

li{list-style: none!important;}

.hide{display:none!important;}
.iblock{display:inline-block!important;}

.clearfix:after {
    display:block;
    clear:both;
    height:0px;
    visibility:hidden;
    content:".";
}
.clearfix {
    min-height: 1px;
}
* html .clearfix {
    height: 1px;
    height: auto;
    overflow: hidden;
}

.relative{position:relative;}
.absolute{position:absolute;}

.color-red{color: #CC0000}
.color-blue{color: #0000CC}
.color-green{color: #00CC00}
.color-orange{color: #f39800}
.color-gray{color: #BBB}

.bg_gray{
    background-color:#CCC;
}
.bg_red{
    background-color:#C00;
}

.font10{font-size:10px;}
.font12{font-size:12px;}
.font14{font-size:14px;}
.font16{font-size:16px;}
.font18{font-size:18px;}
.font20{font-size:20px;}
.font24{font-size:24px;}
.font28{font-size:28px;}

.lh100{line-height:100%}
.lh120{line-height:120%}
.lh140{line-height:140%}
.lh150{line-height:150%}
.lh200{line-height:200%}

.tx_center{text-align:center;}
.tx_left{text-align:left;}
.tx_right{text-align:right;}

.width5{width:5%!important;}
.width10{width:10%!important;}
.width15{width:15%!important;}
.width20{width:20%!important;}
.width25{width:25%!important;}
.width30{width:30%!important;}
.width33{width:calc(100% / 3)!important;}
.width40{width:40%!important;}
.width45{width:45%!important;}
.width50{width:50%!important;}
.width55{width:55%!important;}
.width60{width:60%!important;}
.width66{width:calc(100% / 3 * 2)!important;}
.width70{width:70%!important;}
.width75{width:75%!important;}
.width80{width:80%!important;}
.width90{width:90%!important;}
.width100{width:100%!important;}


/****************************************
         margin/padding
*****************************************/
.mrauto{margin-right:auto;margin-left:auto;}

.mr2{margin-top:2px;margin-bottom:2px;}
.mr4{margin-top:4px;margin-bottom:4px;}
.mr6{margin-top:6px;margin-bottom:6px;}
.mr8{margin-top:8px;margin-bottom:8px;}
.mr10{margin-top:10px;margin-bottom:10px;}
.mr20{margin-top:20px;margin-bottom:20px;}

.mrs2{margin-right:2px;margin-left:2px;}
.mrs4{margin-right:4px;margin-left:4px;}
.mrs6{margin-right:6px;margin-left:6px;}
.mrs8{margin-right:8px;margin-left:8px;}
.mrs10{margin-right:10px;margin-left:10px;}
.mrs15{margin-right:15px;margin-left:15px;}
.mrs30{margin-right:30px;margin-left:30px;}

.mrt2{margin-top:2px;}
.mrt4{margin-top:4px;}
.mrt6{margin-top:6px;}
.mrt8{margin-top:8px;}
.mrt10{margin-top:10px;}

.mrb2{margin-bottom:2px;}
.mrb4{margin-bottom:4px;}
.mrb6{margin-bottom:6px;}
.mrb8{margin-bottom:8px;}
.mrb10{margin-bottom:10px;}
.mrb20{margin-bottom:20px;}

.pd2{padding-top:2px;padding-bottom:2px;}
.pd4{padding-top:4px;padding-bottom:4px;}
.pd6{padding-top:6px;padding-bottom:6px;}
.pd8{padding-top:8px;padding-bottom:8px;}
.pd10{padding-top:10px;padding-bottom:10px;}
.pd20{padding-top:20px;padding-bottom:20px;}

.pds2{padding-left:2px;padding-right:2px;}
.pds4{padding-left:4px;padding-right:4px;}
.pds6{padding-left:6px;padding-right:6px;}
.pds8{padding-left:8px;padding-right:8px;}
.pds10{padding-left:10px;padding-right:10px;}

.pda2{padding:2px;}
.pda4{padding:4px;}
.pda6{padding:6px;}
.pda8{padding:8px;}
.pda10{padding:10px;}


/****************************************
           Common Layout
*****************************************/
@media screen and (min-width: 769px) {
    .flexbox_pc{
        display:-ms-flexbox;
        display:-webkit-box;
        display:-webkit-flex;
        display:flex;
    }
	.disp_sp{display:none!important;}
	.disp_tab{display:none!important;}

    #jump-top{
		width: 64px;
		height: 64px;
		position: fixed;
		right: 8px;
		bottom: 84px;
		background: #276194;
		opacity: 0.6;
		border-radius: 50%;
    }
    #jump-top span{
		position: relative;
		display: block;
        width: 64px;
        height: 64px;
		text-decoration: none;
    }
    #jump-top span::before{
		font-family: 'Font Awesome 5 Free';
		font-weight: 900;
		content: '\f102';
		font-size: 24px;
		color: #fff;
		position: absolute;
		width: 24px;
		height: 24px;
		top: -20px;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
		text-align: center;
    }
    #jump-top span::after{
		content: 'PAGE TOP';
        font-size: 10px;
        color: #fff;
        position: absolute;
        top: 40px;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
		text-align: center;
    }

}
@media screen and (max-width: 768px) {
	.disp_pc{display:none!important;}
	.disp_tab{display:none!important;}
}

.flexbox{
    display:-ms-flexbox;
    display:-webkit-box;
    display:-webkit-flex;
    display:flex;
}
.fbox-child1{
    -ms-flex-order:1;
    -moz-box-ordinal-group:1;
    -webkit-box-ordinal-group:1;
    -o-box-ordinal-group:1;
    -ms-box-ordinal-group:1;
    -webkit-order:1;
}
.fbox-child2{
    -ms-flex-order:2;
    -moz-box-ordinal-group:2;
    -webkit-box-ordinal-group:2;
    -o-box-ordinal-group:2;
    -ms-box-ordinal-group:2;
    -webkit-order:2;
}
.fbox-child3{
    -ms-flex-order:3;
    -moz-box-ordinal-group:3;
    -webkit-box-ordinal-group:3;
    -o-box-ordinal-group:3;
    -ms-box-ordinal-group:3;
    -webkit-order:3;
}
.fbox-child4{
    -ms-flex-order:4;
    -moz-box-ordinal-group:4;
    -webkit-box-ordinal-group:4;
    -o-box-ordinal-group:4;
    -ms-box-ordinal-group:4;
    -webkit-order:4;
}
.fbox-child5{
    -ms-flex-order:5;
    -moz-box-ordinal-group:5;
    -webkit-box-ordinal-group:5;
    -o-box-ordinal-group:5;
    -ms-box-ordinal-group:5;
    -webkit-order:5;
}


/****************************************
            button
*****************************************/
.btn_small{
    display:block;
    color:#FFF!important;
    font-size:14px;
    line-height:48px;
    text-align:center;
    margin:0px auto;
    width:160px;
    height:48px;
    background-color:#000;
    border-radius:4px!important;
}
.btn_middle{
    display:block;
    color:#FFF!important;
    font-size:14px;
    line-height:48px;
    text-align:center;
    margin:0px auto;
    width:200px;
    height:48px;
    background-color:#000;
    border-radius:4px!important;
}
.btn_large{
    display:block;
    color:#FFF!important;
    font-size:14px;
    line-height:48px;
    text-align:center;
    margin:0px auto;
    width:240px;
    height:48px;
    background-color:#000;
    border-radius:4px!important;
}
.btn_huge{
    display:block;
    color:#FFF!important;
    font-size:14px;
    line-height:48px;
    text-align:center;
    margin:0px auto;
    width:300px;
    height:48px;
    background-color:#000;
    border-radius:4px!important;
}

input.btn_middle{
    line-height:40px;
}

.btn_green{
	background-color:#337777;
}
.btn_gray{
    background-color:#b1b1b1;
}
.btn_lightgray{
    background-color:#efefef;
}
.btn_red{
    background-color:#c10012;
}
.btn_white{
    background-color:#fff;
    color:#000!important;
    border:2px solid #000;
    line-height:44px;
}



/****************************************
           Content Layout
*****************************************/
body {
    font-size:14px;
}
.skiptranslate iframe{display: none;}

@media screen and (min-width: 769px) {
	/**  header **/
	header{
	    width:100%;
        min-width: 1088px;
	}
	header #header_box{
	    margin:0px auto;
	    padding:20px 0px;
	    width:960px;
	}
	#header_box .header_logo{
	    width:240px;
	    height:50px;
	}
	#header_box .header_logo a{
	    display:block;
	    width:240px;
	    height:50px;
	    background-image:url('../img/common/logo.png');
	    background-size:100% auto;
	}
	#header_box .header_nav{
	    width:calc(100% - 240px);
	    justify-content: flex-end;
	}

	#header_box .header_nav .guide_box{
	    position:relative;
	    width:200px;
	    height:48px;
	    margin-right:24px;
	    background-color:#E95110;
	    border-radius:4px;
	}
	#header_box .header_nav .guide_box a{
	    display:block;
	    color:#FFF;
	    line-height:50px;
	    height:48px;
	    padding-left:80px;
	}
	#header_box .header_nav .guide_box .icon{
	    position:absolute;
	    top:12px;
	    left:40px;
	    display:block;
	    width:24px;
	    height:24px;
	    background-image:url('../img/common/icon_info.png');
	    background-size:100% auto;
	    background-repeat:no-repeat;
	}
	#header_box .header_nav .login_box,
	#header_box .header_nav .mypaage_box{
	    position:relative;
	    width:200px;
	    height:48px;
	    background-color:#1FB5C3;
	    border-radius:4px;
	}
	#header_box .header_nav .login_box a,
	#header_box .header_nav .mypaage_box a{
	    display:block;
	    color:#FFF;
	    line-height:50px;
	    height:48px;
	    padding-left:84px;
	}
	#header_box .header_nav .login_box .icon,
	#header_box .header_nav .mypaage_box .icon{
	    position:absolute;
	    top:12px;
	    left:48px;
	    display:block;
	    width:24px;
	    height:24px;
	    background-image:url('../img/common/icon_login.png');
	    background-size:100% auto;
	    background-repeat:no-repeat;
	}

    #header_box .header_nav #google_translate_element{
        margin-right:10px;
    }

	#header_box .header_nav .global_social_list{
	    display:block;
	    position:relative;
	    color:#000;
	    line-height:48px;
	    padding-left:64px;
	    width:100%;
	    height:48px;
	}
	#header_box .header_nav .global_social_list i{
		position:absolute;
		top:12px;
		left:20px;
		font-size:24px;
		width:30px;
		height:24px;
		text-align:center;
	}
	#header_box .header_nav .global_social_list .global_social_list_box{
		position:absolute;
		top: 0px;
		right: 12px;
	}
	#header_box .header_nav .global_social_list a {
		margin-left: 12px;
	}
	#header_box .header_nav .global_social_list a img{
		width: 32px;
		height: 32px;
	}
	#header_box .header_nav .global_social_list a img:hover{
		opacity: 0.7;
	}



	/**  global nav **/
	header #global_nav{
	    margin:10px auto 0px;
	    width:100%;
	    height:64px;
	    background-color:#28628C;
	}
	 #global_nav ul{
	    margin:0px auto;
	    width:1088px;
	    height:64px;
	}
	#global_nav ul li{
	    float:left;
	    line-height:64px;
	    text-align:center;
	    width:136px;
	    height:64px;
	    border-left: solid 1px #FFF;
	}
	#global_nav ul li:last-child{
	    border-right: solid 1px #FFF;
	}
	#global_nav ul li a{
	    display:block;
	    color:#FFF;
	    font-size:16px;
	    line-height:64px;
	    text-align:center;
	    width:136px;
	    height:64px;
	}

	/**  footer **/
	footer{
	    color:#555;
	    padding:40px 0px;
	    background-color:#F0F0F0;
        min-width: 1088px;
	}
	footer #global_footer{
	    margin-bottom:20px;
	}
	#global_footer .global_footer_list{
	    margin:0px auto;
	    width:840px;
	}
	#global_footer .global_footer_list ul li{
	    float:left;
	    padding:0px 8px;
	    border-right:solid 1px #555;
	}
	#global_footer .global_footer_list ul li:last-child{
	    border-right:none;
	}
	#global_footer .global_footer_list ul li a{
	    color:#555;
	}

	#footer_social{
		margin: 0px auto 20px;
		width: 168px;
	}
	#footer_social div{
		text-align:center;
		width: 56px;
		padding: 6px;
	}
	#footer_social div img{
		width: 44px;
		transition: all 0.3s;
	}
	#footer_social div img:hover{
		opacity: 0.8;
	}

	#footer_information .footer_information_box{
	    margin-bottom:40px;
	}
	.footer_information_box .footer_company_box{
	    margin:0px auto 40px;
	    width:900px;
	}
	.footer_information_box .footer_company_box .footer_logo{
	    width:240px;
	    height:50px;
	    background-image:url('../img/common/logo.png');
	    background-size:100% auto;
	}
    .footer_information_box .footer_company_box .footer_logo a{
        display:block;
        width:240px;
        height:50px;
        background-image:url('../img/common/logo.png');
        background-size:100% auto;
    }
	.footer_information_box .footer_company_box .footer_address{
	    font-size:16px;
	    line-height:25px;
	    width:calc(100% - 240px);
	    padding-left:40px;
	}
	.footer_information_box .footer_authorization{
	    text-align:center;
	    line-height: 20px;
	}
	#footer_copyrights{
	    text-align:center;
	}

	/*******パンくず**********/
	nav{
		width:960px;
		margin:0px auto;
	}
	nav ol{
		display:block;
		width:100%;
		margin-top:28px;
	}
	nav ol:after{
		display:block;
		clear:both;
		content:"";
		height:1px;
	}

	nav ol li{
		float:left;
		font-size:16px;
		padding-right:10px;
	}
	nav ol li:after{
		content:">";
	}
    nav ol li:last-child:after{
        content:"";
    }
}

/*********************************/
/*         Smart Phone           */
/*********************************/
@media screen and (max-width: 768px) {
    .flexbox_sp{
        display:-ms-flexbox;
        display:-webkit-box;
        display:-webkit-flex;
        display:flex;
    }
	/**  header **/
	header{
	    width:100%;
	    z-index:50;
        position:fixed;
        top:0;
        background-color:#fff;
        height:60px;
        box-shadow: 0 0 10px 0 rgb(0 0 0 / 50%);
	}
	header #header_box{
	    margin:0px auto;
	    width:100%;
	    height:60px;
	}
	#header_box .header_logo{
	    width:240px;
	    height:56px;
	}
	#header_box .header_logo a{
	    display:block;
	    width:168px;
	    height:56px;
	    background-image:url('../img/common/logo.png');
	    background-size:160px auto;
	    background-position:8px 10px;
	    background-repeat:no-repeat;
	}
	#header_box .header_nav{
	    width:calc(100% - 160px);
	    justify-content: flex-end;
	}
	#header_box .header_nav .header_menu_box,
	#header_box .header_nav .header_menu_box span.menu_line{
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	#header_box .header_nav .header_menu_box{
		position: relative;
		width: 56px;
		height: 56px;
		background: none;
		border: none;
		appearance: none;
		cursor: pointer;
		text-align:center;
	}
	#header_box .header_nav .header_menu_box.active{
		background-color:#efefef;
	}
	#header_box .header_nav .header_menu_box span.menu_line{
		position: absolute;
		left:10px;
		width: 36px;
		height: 2px;
		background-color: #000;
		border-radius: 2px;
	}
	#header_box .header_nav .header_menu_box span.menu_text{
		position: absolute;
		left: 0px;
		bottom:4px;
		width: 56px;
		font-size:10px;
	}
	#header_box .header_nav .header_menu_box span.menu_line:nth-of-type(1) {
		top: 10px;
	}
	#header_box .header_nav .header_menu_box span.menu_line:nth-of-type(2) {
		top: 22px;
	}
	#header_box .header_nav .header_menu_box span.menu_line:nth-of-type(3) {
		top: 34px;
	}
	#header_box .header_nav .header_menu_box.active span.menu_line:nth-of-type(1) {
		transform: translateY(12px) rotate(-45deg);
	}
	#header_box .header_nav .header_menu_box.active span.menu_line:nth-of-type(2) {
		opacity: 0;
	}
	#header_box .header_nav .header_menu_box.active span.menu_line:nth-of-type(3) {
		transform: translateY(-12px) rotate(45deg);
	}
    #header_box .header_nav #google_translate_element{
        margin:14px 0 0 20px;
    }

	/**  global nav **/
	header #global_nav{
	    display:none;
	    position:absolute;
	    top:56px;
	    left:0px;
	    width:100%;
	    height:calc(100% - 56px);
	    background-color:rgba(0,0,0,0.7);
	    z-index:100;
	}
	 #global_nav ul{
	    margin:0px auto;
	    width:100%;
	    background-color:#efefef;
	}
	#global_nav ul li{
	    line-height:48px;
	    width:100%;
	    height:48px;
	    border-bottom: solid 1px #FFF;
	}
	#global_nav ul li:last-child{
	    border-right: solid 1px #FFF;
	}
	#global_nav ul li a{
	    display:block;
	    position:relative;
	    color:#000;
	    line-height:48px;
	    padding-left:64px;
	    width:100%;
	    height:48px;
	}
	#global_nav ul li a i{
		position:absolute;
		top:12px;
		left:20px;
		font-size:24px;
		width:30px;
		height:24px;
		text-align:center;
	}
	#global_nav ul li a:after{
		display: block;
		position:absolute;
		top: calc(50% - 2px);
		right:20px;
		width: 8px;
		height: 8px;
		content:"";
		border-top: solid 2px;
		border-right: solid 2px;
		transform: rotate(45deg) translateY(-50%);
	}
	#global_nav .global_social_list{
	    display:block;
	    position:relative;
	    color:#000;
	    line-height:48px;
	    padding-left:64px;
	    width:100%;
	    height:48px;
	    background-color:#efefef;
	}
	#global_nav .global_social_list i{
		position:absolute;
		top:12px;
		left:20px;
		font-size:24px;
		width:30px;
		height:24px;
		text-align:center;
	}
	#global_nav .global_social_list .global_social_list_box{
		position:absolute;
		top: 0px;
		right: 12px;
	}
	#global_nav .global_social_list a {
		margin-left: 12px;
	}
	#global_nav .global_social_list a img{
		width: 32px;
		height: 32px;
	}


	/**  footer **/
	footer{
	    color:#555;
	    padding:0px 0px 40px;
	    background-color:#F0F0F0;
	    width:100%;
	}
	footer #global_footer{
	    margin-bottom:30px;
	}
	#global_footer .global_footer_list{
	    margin:0px auto;
	    width:100%;
        font-size:0.9em;
	}
	#global_footer .global_footer_list ul {
		width:100%;
	}
	#global_footer .global_footer_list ul li{
	    float:left;
	    line-height:48px;
	    width:50%;
	    height:48px;
	    padding:0px 8px;
	    border:solid 1px #FFF;
	}
	#global_footer .global_footer_list ul li:last-child{
	    border-right:none;
	}
	#global_footer .global_footer_list ul li a{
		display:block;
		position: relative;
	    color:#555;
	}
	#global_footer .global_footer_list ul li a:after{
		display: block;
		position:absolute;
		top: calc(50% - 2px);
		right:8px;
		width: 8px;
		height: 8px;
		content:"";
		border-top: solid 2px;
		border-right: solid 2px;
		transform: rotate(45deg) translateY(-50%);
	}

	#footer_social{
		margin: 0px auto 20px;
		width: 168px;
	}
	#footer_social div{
		text-align:center;
		width: 56px;
		padding: 6px;
	}
	#footer_social div img{
		width: 44px;
		transition: all 0.3s;
	}
	#footer_social div img.hover{
		opacity: 0.8;
	}

	#footer_information .footer_information_box{
	}
	.footer_information_box .footer_company_box{
	}
    .footer_information_box .footer_company_box .footer_logo{
        margin:0px auto 40px;
    	width:200px;
    	height:40px;
    }
    .footer_information_box .footer_company_box .footer_logo a{
        display:block;
    	width:200px;
    	height:40px;
    	background-image:url('../img/common/logo.png');
    	background-size:200px auto;
    	background-repeat:no-repeat;
    }
	.footer_information_box .footer_company_box .footer_address{
	    font-size:12px;
	    line-height:20px;
	    width:100%;
	    padding:0px 8px;
	}
	.footer_information_box .footer_company_box .footer_address span{
		display:block;
	}
	.footer_information_box .footer_authorization{
		font-size:12px;
	    line-height: 20px;
	    text-align:center;
		margin:10px auto;
	    padding:8px;
		width:calc(100% - 20px);
	    border:solid 1px #999;
	}
	#footer_copyrights{
		font-size:12px;
	    text-align:center;
	}

	/*******パンくず**********/
	nav{
		display:none;
		width:100%;
		margin:0px auto;
	}
	nav ol{
		display:block;
		width:100%;
		padding-left:8px;
		margin-top:12px;
	}
	nav ol:after{
		display:block;
		clear:both;
		content:"";
		height:1px;
	}

	nav ol li{
		float:left;
		font-size:14px;
		padding-right:10px;
	}
	nav ol li:after{
		content:">";
	}

}
