@charset "UTF-8";
/***************************************************************/
/********************* メイン　背景設定等 ************************/
/***************************************************************/
body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ",Meiryo,"ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif;
	font-weight: 400;
	width: 100%;
	padding: 0;
	margin: 0;
    }
    
#header{
	background-image: url(pcimage/head.jpg);
	background-repeat: no-repeat;
	background-position: left center;
	height: 80px;
	width: 980px;
	margin: 0 auto;
	/*border: 1px solid #FCDBDE;*/
    }
#header h1{
	width: 400px;
	font-size: 13px;
	font-weight: bold;
	color: #FFF;
	float: right;
	line-height: 20px;
	height: 20px;
	padding-right: 5px;
	padding-bottom: 0px;
	margin-top: 0px;
	text-align: right;
    }

.inner_box{
width:980px;
height:auto;
margin:0 auto;
}


/***************************************************************/
/**************************  ヘッダ設定 **************************/
/***************************************************************/
#HeaderText{
	width: 480px;
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	float: right;
	line-height: 10px;
	padding-right: 10px;
	padding-bottom: 0px;	
	margin-top: 0px;
	text-align: right;
    }
#HeaderText a:link{
	color: #ed0e0e;
	text-decoration: none;
    }
#HeaderText a{
	color: #ed0e0e;
	text-decoration: none;
    }
#HeaderText a:hover{
	color: #cccccc;
    }

/** ロゴの大きさに合わせる**/
#header #logo{
	float: left;
	height: 40px;
	width: 180px;
	text-align: left;
	overflow: hidden;
    }

/******幅、高さはロゴの大きさに合わせる********/
#header #logo a{
	height: 40px;
	width: 180px;
display:block;
}

/***************************************************************/
/************************* フッターの設定 ************************/
/***************************************************************/

#footer{
	font-size: 13px;
	color: #333;
	text-align: center;
	line-height: 1.3em;
	background-color: #cecece;
	width: 100%;
	height: 80px;
	margin: 0px;
	float: left;
	background-image: url(pcimage/foot.jpg);
	background-position: center top;
	background-repeat: no-repeat;
    }
#footerBox{
	width:980px;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	font-size: 12px;
	color: #555555;
	text-align: center;
	line-height: 1.3em;
	height: 15px;
    }
#footerBox #footer_text{
	width:980px;
	height: 50px;
	font-size: 13px;
	text-align: left;
	color: #555555;
	line-height: 1.3em;
	padding-top: 10px;
	padding-right: 0px;
	padding-left: 10px;
	overflow: hidden;


    }

#copyright{
	font-size: 12px;
	color: #555555;
	text-align: center;
	line-height: 1.3em;
	height: 0px;
	padding-top: 0px;

    }


/***************************************************************/
/************************** ヘッダメニュー ***********************/
/***************************************************************/

#header_menu{
	width: 980px;
	line-height: 45px;
	height: 45px;
	background-color: #000000;
	/*position: absolute;
	top: 100px;*/
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	overflow: visible;
	padding-top: 0px;
	padding-bottom: 0px;
margin-bottom: -2px !important;
    }

.h_menu00,
.h_menu00 a:link,
.h_menu00 a:visited,
.h_menu00 a:hover,
.h_menu00a,
.h_menu00a a:visited,
.h_menu00a a:link,
.h_menu00a a:hover
{

	height: 45px;
	width: 196px;
	float: left;
	text-align: center;
	line-height: 45px;
	display: block;
	/*border-left: 1px solid #FFFFFF;*/
	/*border-right: 1px solid #FFFFFF;*/
	font-size:13px;
	color: #828282;
	text-decoration: none;
    }

.h_menu00 a:link,
.h_menu00 a:visited,
.h_menu00a a:link,
.h_menu00a a:visited{
	background-image: url(pcimage/h_menubtn.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	color: #ffffff;
	text-decoration: none;
    }

.h_menu00 a:hover,
.h_menu00a a:hover{
	background-image: url(pcimage/h_menubtn.jpg);
	background-repeat: no-repeat;
 	background-position: left bottom;
	color: #333333;
	text-decoration: none;
    }

/***************************************************************/
/************************** アンダーライン ***********************/
/***************************************************************/

.under_line{
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #999999;
    }

/***************************************************************/
/************************p_center*******************************/
/***************************************************************/

.p_center{
text-align: center;
margin: 0;
padding: 0;
    }
    
/***サイドサムネイル*****************************/
.PageMenuIcon{
width:100px;
}



/* Contact navigation 2026-09-25 */
#header_menu{display:flex!important;justify-content:center;align-items:center;flex-wrap:nowrap;height:auto!important;min-height:56px;box-sizing:border-box;padding:6px 12px!important;}
#header_menu>.h_menu00{float:none!important;width:auto!important;flex:1 1 0;min-width:0;height:auto!important;margin:0!important;}
#header_menu>.h_menu00>a{display:flex!important;align-items:center;justify-content:center;width:100%!important;box-sizing:border-box;height:44px!important;line-height:1.4!important;padding:8px 10px!important;}
#header_menu>.h_menu00:has(a[href*="frm1321483577"]){order:10;}
#header_menu>.h_menu00>a[href*="frm1321483577"]{background:#c5a45c!important;color:#151515!important;border:1px solid #d8bf85;border-radius:4px;font-weight:bold;text-decoration:none;}
#header_menu>.h_menu00>a[href*="frm1321483577"]:hover{background:#e0c485!important;}
#header_menu>.h_menu00>a:focus-visible{outline:3px solid #e0c485;outline-offset:2px;}


/* Article navigation: readable size and line spacing 2026-09-26 */
#main .contents_navi .f12,
#main .contents_navi .f12 div,
#main .contents_navi .f12 a {
  font-size: 14px;
  line-height: 1.6;
}

/* Takahashi Juku sidebar: keep schedule and premium above reports. 2026-10-02 */
@media screen {
#side:has(> .subject > a[href$="/theme1455.html"]):has(> .subject > a[href$="/theme1859.html"]) { display:flex; flex-direction:column; }
#side:has(> .subject > a[href$="/theme1455.html"]):has(> .subject > a[href$="/theme1859.html"]) > h4 { order:-30; }
#side:has(> .subject > a[href$="/theme1455.html"]):has(> .subject > a[href$="/theme1859.html"]) > .subject:has(> a[href$="/theme1455.html"]) { order:-20; }
#side:has(> .subject > a[href$="/theme1455.html"]):has(> .subject > a[href$="/theme1859.html"]) > .subject:has(> a[href$="/theme1859.html"]) { order:-10; }
}

/* YouTube Juku sidebar: keep recording schedule above reports. 2026-10-02 */
@media screen {
#side:has(> .subject > a[href$="/theme1661.html"]) { display:flex; flex-direction:column; }
#side:has(> .subject > a[href$="/theme1661.html"]) > h4 { order:-30; }
#side:has(> .subject > a[href$="/theme1661.html"]) > .subject:has(> a[href$="/theme1661.html"]) { order:-20; }
}

/* Newsletter registration pinned above all backnumbers — 2026-10-05 */
@media screen {
:root body #side:has(> .subject > a[href$="/theme88.html"]) { display:flex!important; flex-direction:column; }
:root body #side:has(> .subject > a[href$="/theme88.html"]) > h4 { order:-30!important; }
:root body #side:has(> .subject > a[href$="/theme88.html"]) > .subject:has(> a[href$="/theme88.html"]) { order:-20!important; }
}

/* Article 3499 thumbnail */
a[href$="theme3499.html"] img.PageMenuIcon { content:url("https://www.loveandfree.jp/_file/macbook-pro-thumbnail.png") !important; width:130px !important; max-width:100% !important; height:auto !important; object-fit:contain !important; }

/* Free video form: correction button */
body #main form#form1 input[type="submit"][value="入力内容を変更する"]{background:#fff!important;background-image:none!important;color:#333!important;border:1px solid #bbb!important;box-shadow:none!important;}
/* Consistent desktop navigation below 1024px — 2026-10-26 */
@media screen and (max-width:1023px){
html:not(:has(link[href*="smart.css"])) body #header_menu#header_menu{position:static!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:8px 18px!important;height:auto!important;min-height:56px!important;padding:12px 16px!important;background:#fff!important;border:0!important;border-bottom:1px solid #e8e8e8!important;box-shadow:none!important;clip-path:none!important;box-sizing:border-box!important;}
html:not(:has(link[href*="smart.css"])) body #header_menu#header_menu>.h_menu00{flex:0 1 auto!important;width:auto!important;height:auto!important;float:none!important;background:none!important;border:0!important;}
html:not(:has(link[href*="smart.css"])) body #header_menu#header_menu>.h_menu00>a{display:block!important;width:auto!important;height:auto!important;line-height:1.5!important;padding:10px 4px!important;background:none!important;color:#111!important;font-size:14px!important;font-weight:500!important;border:0!important;text-decoration:none!important;white-space:nowrap;}
html:not(:has(link[href*="smart.css"])) body #header_menu#header_menu>.h_menu00>a[href*="frm1321483577"]{background:#fff!important;color:#111!important;border:1px solid #333!important;border-radius:3px!important;padding:10px 16px!important;}
}

/* Hide legacy header copy at intermediate desktop widths */
@media screen and (max-width:1023px){html:not(:has(link[href*="smart.css"])) body #header #HeaderText,html:not(:has(link[href*="smart.css"])) body #header>h1{display:none!important;}}

/* Company profile: match desktop page width */
@media screen and (min-width:1024px){html:root body #wrap#wrap:has(.lf-wrap .lf-info-table){width:calc(100% - 80px)!important;max-width:1340px!important;}html:root body #main#main:has(.lf-wrap .lf-info-table)>.contentsbox05{width:100%!important;max-width:none!important;}html:root body #main#main .lf-wrap:has(.lf-info-table){width:100%!important;max-width:none!important;}}

/* Company profile title alignment */
html:root body #main#main:has(.lf-wrap .lf-info-table)>.page_title{display:block!important;}
html:root body #main#main:has(.lf-wrap .lf-info-table)>.contents_title{max-width:none!important;margin:24px 0 30px!important;padding:0 18px!important;}

/* Breadcrumbs and category heading: prevent float overlap */
html:root body #main#main>.p_navi{float:none!important;clear:both!important;display:block!important;height:auto!important;box-sizing:border-box!important;}
html:root body #main#main>.page_title{clear:both!important;float:none!important;display:flow-root!important;height:auto!important;min-height:0!important;box-sizing:border-box!important;}

/* Embedded juku forms must not enlarge category headings */
html:root body #main#main:has(.juku-wrap)>.page_title{padding:0 0 0 16px!important;font-size:15px!important;line-height:1.6!important;margin-top:24px!important;margin-bottom:24px!important;}

/* YouTube juku uses lf-wrap rather than juku-wrap */
html:root body #main#main:has(>.p_navi a[href="page88.html"])>.page_title{padding:0 0 0 16px!important;font-size:15px!important;line-height:1.6!important;margin-top:24px!important;margin-bottom:24px!important;}

/* Desktop page grid: use the blog outer width and title origin */
@media screen and (min-width:1024px){
html:root body #frame#frame#frame{width:calc(100% - 48px)!important;max-width:1340px!important;margin-left:auto!important;margin-right:auto!important;}
html:root body #frame#frame#frame>#wrap#wrap#wrap{width:100%!important;max-width:1340px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box!important;}
html:root body #main#main#main>.p_navi,html:root body #main#main#main>.page_title,html:root body #main#main#main>.contents_title{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;}
html:root body #main#main#main>.contents_title{padding-left:0!important;padding-right:0!important;}
html:root body #main#main#main:has(.juku-wrap)>.contentsbox05,html:root body #main#main#main:has(.lf-wrap)>.contentsbox05{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;}
}

/* Shared desktop header: align logo, navigation and page grid */
@media screen and (min-width:1024px){
html:root body #header#header#header{box-sizing:border-box!important;width:100%!important;max-width:1340px!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;}
html:root body #header_menu#header_menu#header_menu{right:max(0px,calc((100% - 1340px)/2))!important;left:auto!important;width:calc(100% - 130px)!important;max-width:1130px!important;}
html:root body #top_header#top_header#top_header{width:100%!important;max-width:1340px!important;margin-left:auto!important;margin-right:auto!important;}
html:root body #header#header#header #logo#logo{width:60px!important;height:60px!important;background-size:contain!important;}
}

/* Page101 legacy black navigation: match shared white header */
@media screen and (min-width:1024px){html:root body #header_menu#header_menu#header_menu{background:transparent!important;box-shadow:none!important;clip-path:none!important;}}
@media screen and (max-width:1023px){html:not(:has(link[href*="smart.css"])) body #header_menu#header_menu#header_menu{background:#fff!important;box-shadow:none!important;clip-path:none!important;}}
